zadania z ciwczen 3
mam nadzieje ze nikt nie ma zamiaru uzywac ctrl+c ctrl+v
int silnia(int n) { int s=1; for(int i=1;i<=n;i++) { s=s*i; } return s; } int zad1_newton(int n,int k) { int ne; ne=silnia(n)/(silnia(k)*silnia(n-k)); return silnia(n)/(silnia(k)*silnia(n-k)); } void zad2_obj_kul(float r,float &v) { v=(4.0/3)*M_PI*r*r*r; } float zad2_obj_stoz(float r,float h) { float obj,p; p=M_PI*r*r; obj=(1.0/3)*p*h; return obj; } int zad3_suma_l_p(int p,int k,int n,int &h) { int c=0,o,b,s=0; for(int i=1;i<=n;i++) { o=(rand()%(k-p+1)+p); b=o%2; if(b==0){ c=c+o; h=s++; } } return c; } float zad4_dzialanie(float a,float b,char z,float &dzialanie) { if(z=='+'){ dzialanie=a+b; return true; } else if(z=='-'){ dzialanie=a-b; return true; } else if(z=='*'){ dzialanie=a*b; return true; } else{ return false; } } int zad5() { int k1,k2,suma; k1=rand()%6+1; k2=rand()%6+1; suma=k1+k2; return suma; } void wynik(bool g,int d5) { if(g==true) { cout<<"wygrales"<<endl; } else{cout<<"przegrales"<<endl;} cout<<"wylosowales: "<<d5<<endl; } int main() { char t; nazwisko(); do{ cout<<"podaj ktore zadanie:"; cin>>t; switch(t) { case 'n': case 'N': int n,k; cout<<"podaj n: "; cin>>n; cout<<endl; cout<<"podaj k: "; cin>>k; cout<<"symbol newtona= "<<zad1_newton(n,k)<<endl; break; case 'k': case 'K': float r,v; cout<<"podaj r= "; cin>>r; cout<<endl; zad2_obj_kul(r,v); cout<<endl; cout<<"v= "<<v; cout<<endl; break; case 'f': case 'F': int s,p,u,c; cout<<"podaj ilosc liczb: "; cin>>c; cout<<endl; cout<<"podaj granice przedzialu <p,k>"<<endl; cout<<"p: "; cin>>p; cout<<endl; cout<<"k: "; cin>>u; cout<<endl; if(p<u){ cout<<"suma liczb parzystych wylosowanych z przedzialu <"<<p<<","<<u<<">:"<<zad3_suma_l_p(p,u,c,s)<<endl; cout<<"ilosc liczb parzystych wylosowanych w tym przedziale to: "<<s<<endl; }else{cout<<"zly przedzial"<<endl;} break; case 'd': case 'D': float a,b,dzialanie; dzialanie=0; char q; cout<<"podaj a:"; cin>>a; cout<<endl; cout<<"podaj b:"; cin>>b; cout<<endl; cout<<"jakie dzialanie chcesz wykonac? podaj znak(+,-,*):"; cin>>q; cout<<endl; zad4_dzialanie(a,b,q,dzialanie); if(t==1){ cout<<"wynik: "<<dzialanie<<endl; } break; case 'g': case 'G': int d3,c3; bool b1,b2=true; cout<<"czy chcesz rzucic?(wpisz y jesli tak)"; cin>>t; cout<<endl; if(t=='y' or t=='Y') { d3=zad5(); cout<<"wyrzuciles 2 kostkami: "<<d3<<endl; if(d3==7 || d3==11) { b1=true; } else if(d3==2 or d3==3 or d3==12) { b1=false; } else{ c3=d3; do{ cout<<"czy chcesz rzucic?(wpisz y jesli tak)"; cin>>t; cout<<endl; if(t=='y' or t=='Y') { d3=zad5(); cout<<"wyrzuciles 2 kostkami: "<<d3<<endl; if(d3==c3) { b1=true; } else if(d3==7) { b1=false; } }else{b2=false;break;} }while(c3!=d3 and d3!=7); } } if(b2==true) { wynik(b1,d3); }else{cout<<"nie skonczyles gry"<<endl;} break; } cout<<"wpisz t jesli chcesz zakonczyc: "; cin>>t; cout<<endl; }while(t!='t' and t!='T'); system("PAUSE"); return 0; }
P.S. przetestowalem porzadnie tylko 'g'-gre reszta zadan byla tylko bobierznie testowana ale dzialaly.
jesli znajde jakis blad to podam po "p.s." poprawione zadanie.
jesli ktos znajdzie jakis blad prosilbym o napisanie o tym:)
case 'n':
case 'N':
int n1;
cout<<"podaj n;";
cin>>n1;
cout<<endl;
cout<<"silnia z n:"<<silnia(n1)<<endl;
break;
case 'w':
case 'W':
............
case 's':
case 'S':
int r1,h1;
cout<<"podaj promien: ";
cin>>r1;
cout<<endl;
cout<<"podaj wysokosc: ";
cin>>h1;
cout<<"objetosc stozka to: "<<zad2_obj_stoz(r1,h1)<<endl;
break;
faktycznie:) to jest czesc z zajec
Ostatnio edytowany przez jogo (28-03-2012 20:03:12)
Offline
mam zagwozdke z ostania funkcja 'g'-gra, konkretnie chodzi o to ze przy pierwszym wywolaniu case g wynik zawsze jest 12 co daje przegrana(przy kolejnych wywolaniach dziala poprawnie dlatego nie zauwazylem tego odrazu) co prawda rozwiazalem problem dopisujac do:
d3=zad5();
cout<<"wyrzuciles 2 kostkami: "<<d3<<endl;
if(d3==7 || d3==11)
wywolanie funkcji wczesniej:
zad5();
d3=zad5();
cout<<"wyrzuciles 2 kostkami: "<<d3<<endl;
if(d3==7 || d3==11)
mimo to moze ktos wie dlaczego jesli nie wywolalem funkcji zad5() wczesniej tylko odrazu ja przypisalem d3=zad() wynik zawsze byl 12
Offline
Truje dupe, ale jestem
no i
Include <time.h>
Offline