c klasowka1 rozwiazania, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, kol 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;

}

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

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

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;

}

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

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

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;

}

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

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

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

1

1



Wyszukiwarka

Podobne podstrony:
c-klasowka 1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, kol
c-zadania-w3, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, kol
x, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, kol 1
szanowni, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, kol 2
c-kolokwium1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, kol
szanowni1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, kol 2
c-zadania-w3, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, kol
x, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, kol 1
11-nkb~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
1-algo~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
minmax3, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l6
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
2-eukl~1, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania, l2
pp projekty2004, wisisz, wydzial informatyki, studia zaoczne inzynierskie, podstawy programowania

więcej podobnych podstron