• Nie Znaleziono Wyników

#include <stdio.h&gt

N/A
N/A
Protected

Academic year: 2021

Share "#include <stdio.h&gt"

Copied!
1
0
0

Pełen tekst

(1)

Date: Wed, 22 Mar 2000 08:59:57 CET

///////////////////////////////////////////////////////////////////////////

Zadanie 1 (wersja a/b)

1. czy poprawnie obliczane sa odleglosci , funkcje sqrt, 2. czy poprawnie sa posortowane,

3. czy przy dzieleniu sprawdzony zostal warunek – mianownik!=0

///////////////////////////////////////////////////////////////////////////

#include <stdio.h>

#include <math.h>

main() {

float ax,ay,bx,by,cx,cy,ab,ac,bc,temp;

// wejscie

printf("\npodaj wspolrzedne ");

scanf("%f %f %f %f %f %f",&ax,&ay,&bx,&by,&cx,&cy);

// obliczamy dlugosci

ab=sqrt((ax-bx)*(ax-bx)+(ay-by)*(ay-by));

ac=sqrt((ax-cx)*(ax-cx)+(ay-cy)*(ay-cy));

bc=sqrt((bx-cx)*(bx-cx)+(by-cy)*(by-cy));

// sortujemy if (ab>ac) {

temp=ab;

ab=ac;

ac=temp;

}

if (ab>bc) {

temp=ab;

ab=bc;

bc=temp;

}

if (ac>bc) {

temp=ac;

ac=bc;

bc=temp;

}

// wynik koncowy

// badamy dzielenie przez zero if (bc!=0)

printf("\nproporcja ta wynosi %f",ab/bc);

else

printf("\nTrojkat jest zdegenerowany");

return 0;

}

///////////////////////////////////////////////////////////////////////////

1

(2)

///////////////////////////////////////////////////////////////////////////

Zadanie 2 (wersja a/b)

1. bledy zakresów – sieganie poza tablice, 2. warunki stopu w while(),

3. test czy suma byla parzysta, czy nie,

4. czy wszystko zostalo wykonane w czasie liniowym od rozmiaru tablicy, ///////////////////////////////////////////////////////////////////////////

//wersja a

#include <stdio.h>

#include<conio.h>

int fun2(int tab[],int n);

main() {

const int n=10; // n > 1

int tab[n]={1,1,1,1,1,1,1,3,1,1};

int wynik;

wynik=fun2(tab,n);

if (wynik==-1)

printf("\nNie ma takiego fragmentu\n");

else {

printf("\nFragment tablicy spelniajacy warunki zadania to 0..");

printf("%d", wynik);

}

getch();

return 0;

}

int fun2(int tab[],int n) {

int i, suma=0, sumacz=0;

for(i=0;i<n;i++) suma+=tab[i];

// test - czy suma jest parzysta ? if(suma%2==0)

{

i=0;

while((i<n-1) && (2*sumacz<suma)) // test i<n-1

{

sumacz+=tab[i];

i++;

}

if(2*sumacz==suma) return i-1;

else return -1;

}

else return -1;

}

///////////////////////////////////////////////////////////////////////////

2

(3)

///////////////////////////////////////////////////////////////////////////

wersja b

#include<stdio.h>

#include<conio.h>

int fun2(int tab[],int n);

main() {

int tab[]={3,4,1,3,4,1,4,2,4,2},wynik,n;

n=sizeof(tab)/sizeof(int);

wynik=fun2(tab,n);

if (wynik==-1)

printf("\nNie ma takiego fragmentu\n");

else {

printf("\nFragment tablicy spelniajacy warunki zadania to ");

printf("%d..%d\n ",wynik, wynik+n/2-1);

}

getch();

return 0;

}

int fun2(int tab[],int n) {

int i, suma=0, sumacz=0;

for(i=0;i<n;i++) suma+=tab[i];

if(!(suma%2)) // czy suma jest nieparzysta {

for(i=0;i<(n/2);i++) sumacz+=tab[i];

printf("\nsuma = %d",suma);

i=0;

while((i<n/2) && (2*sumacz!=suma)) //a może porównywać z polowa sumy?

{

sumacz+=tab[i+n/2]-tab[i];

printf("\nsumacz=%d",sumacz);

i++;

}

if(2*sumacz==suma) return i;

else return -1;

}

else return -1;

}

///////////////////////////////////////////////////////////////////////////

3

(4)

///////////////////////////////////////////////////////////////////////////

Oto moje uwagi na temat metod oceny klasówki:

Suma punktów z calego testu = 4 punktów, Zadanie 1 = 2 punkty,

Zadania 2 = 2 punkty, Ocena kazdego zadania:

1 punkt = rozwiazanie z malymi bledami 2 punkty = rozwiazanie poprawne

Ocena dotyczy tylko ciala funkcji.

///////////////////////////////////////////////////////////////////////////

Jutro (w srode) bede na ulicy Newelskiej.

Rozsortuje koperty z pracami.

Na kazdej kopercie napisze nazwisko osoby sprawdzajacej.

Dolacze listy studentów z pierwszego roku, tak aby mozna bylo zapisac na nich punkty z kolokwium.

Sprawdzone prace wraz z listami prosze przekazac do dziekanatu.

Mam nadzieje, ze sprawdzanie prac nie zajmie wiecej niz dwa tygodnie.

Po zebraniu wszystkich wyników wygeneruje finalna liste.

Nastepnie ustale konsultacje dla studentów – studenci musza miec prawo do wgladu w prace...

Na studiach wieczorowych i zaocznych proponuje te same zadania . Za wszystko z góry dziekuje!

Z powazaniem, Piotr Sapiecha

______________________________________________________

Get Your Private, Free Email at http://www.hotmail.com

4

Cytaty

Powiązane dokumenty

Lista rozwijalna z przykładu 1 zawiera miejscowości z list oddziałów, wybranie miejscowości i kliknięcie na przycisk wyświetla poniżej informacje o adresie danego oddziału,

prawdopodobie«stwa wyst¡pienia okre±lonych warto±ci rzutu momentu p¦du cz¡stki na o±

O=PEFD;B=QBRSTU>=DUV?WX

[r]

[r]

[r]

Funkcja mkfifo tworzy łącze nazwane (kolejkę FIFO, ang. named pipe) o nazwie pathname, które ma prawa dostępu określone w argumencie mode. Jeśli łącze zostanie utworzone

[r]