Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <ctime>
- #include <cmath>
- #include <cstdlib>
- #include <climits> // Atom nie obsluguje INT_MIN i INT_MAX, dlatego trzeba było dodać te biblioteke
- using namespace std;
- int NWD(int, int);
- int NWW(int, int);
- void sort(int[], int[]);
- void minmax(int[]);
- bool pierwsza(int);
- int main() {
- srand(time(NULL));
- int w, a, b, nwd, ile, x, p, k;
- int zbior[10]={0};
- int kubelki[5]={0};
- int ciag[10],tablica[10];
- int mon[10];
- int ax, bx, ay, by, x1, y1;
- int c,nr,x2;
- float delta;
- int y,r;
- int x0;
- cout << "\n 1. NWD\n 2. NWW\n 3. Lider + sortowanie kubelkowe\n 4. Monotonicznosc ciagu\n 5. MIN & MAX\n 6. L.PIERWSZA \n 7.Przynaleznosc punktu do odcinka \n 8.Stabilna \n 9.Niestabilna \n 10. Polozenie punktu od okregu \n 11.Rownanie kwadratowe \nPODAJ SWOJ WYBOR: ";
- cin >> w;
- switch(w) {
- case 1:
- cout << "\nPodaj a>0 i b>0: ";
- cin >> a;
- cin >> b;
- cout << "NWD a i b = " <<NWD(a,b);
- break;
- case 2:
- cout << "\nPodaj a>0 i b>0: ";
- cin >> a;
- cin >> b;
- cout << "NWW a i b = " << a*b / NWD(a,b);
- break;
- case 3:
- cout << "\nTablica: ";
- for(int i=0; i<10; i++) {
- zbior[i] = rand()%4+1; //Zakres <1;4>
- cout << zbior[i] << " ";
- }
- cout << endl;
- sort(zbior,kubelki);
- break;
- case 4:
- cout << "podaj ciag" << endl;
- for(int i=0;i<10;i++){
- cin>>mon[i];
- }
- cout<<" sprawdzamy czy jest rosnaca"<<endl;
- for(int j=0;j<10;j++){
- if(mon[j]<mon[j+1]){
- cout<<"czy "<<mon[j]<<" < "<<mon[j+1]<<endl;
- cout<<"jest rosnaca"<<endl;}
- else{
- break;}}
- cout<<" sprawdzamy czy jest malejaca"<<endl;
- for(int j=0;j<10;j++){
- if(mon[j]>mon[j+1]){
- cout<<"czy "<<mon[j]<<" > "<<mon[j+1]<<endl;
- cout<<"jest malejaca"<<endl;}
- else{
- cout<<"nie jest malejace"<<endl;
- break;}
- }
- break;
- case 5:
- cout << "\nCiag liczb: ";
- for(int i=0; i<10; i++) {
- ciag[i]=rand()%100;
- cout << ciag[i] << " ";
- }
- minmax(ciag);
- break;
- case 6:
- cout << "Podaj zakres liczbowy <poczatek;koniec> : ";
- cin >> p;
- cin >> k;
- cout << "\nLiczby pierwsze: ";
- for(int i=p-1; i<k; i++) {
- ciag[i]=i+1;
- x=ciag[i];
- if(pierwsza(x)==true) {
- ile++;
- cout << x << " ";
- }
- }
- cout << "\nIlosc pierwszych: " << ile;
- break;
- default:
- cout << "KONIEC";
- break;
- case 7:
- int ax, bx, ay, by, x1, y1;
- cout<<"Podaj X i Y punktów A i B"<<endl<<"Xa : ";
- cin>>ax;
- cout<<"Ya ; ";
- cin>>ay;
- cout<<endl<<"Xb ; ";
- cin>>bx;
- cout<<"Yb ; ";
- cin>>by;
- cout<<endl<<"Podaj X i Y punktu C ";
- cout<<endl<<"Xc ; ";
- cin>>x1;
- cout<<"Yc ; ";
- cin>>y1;
- if (bx*y1+ax*by+x1*ay-ax*y1-bx*ay-x1*by==0 && x>=min(ax, bx)&& x<=max(ax, bx) && y>=min(ay, by) && y<=max(ay, by))
- {
- cout<<endl<<"Punkt C nalezy do odcinka AB";
- }
- else cout<<"Punkt C nie nalezy do odcinka AB";
- case 8:
- cout << "wype³niamy tablice" << endl;
- srand(time(NULL));
- for(int i=0;i<9;i++){
- tablica[i]=rand()%7+4;
- cout<<tablica[i]<<", ";
- }
- cout<<"dla losowych a,b,c wyliczamy algorytm stabilny"<<endl;
- for(int k=0;k<3;k++){
- for(int i=0;i<3;i++){
- a=tablica[i];
- }
- for(int i=3;i<6;i++){
- b=tablica[i];
- }
- for(int i=6;i<9;i++){
- c=tablica[i];
- }
- delta=(b*b)-4*a*c;
- if(delta==0){
- x=(-1*b)/(2*a);
- cout<<"x= "<<x<<endl;
- }if(delta<0)
- cout<<"brak rozwiazan"<<endl;
- if(delta>0){
- if(b<0){
- x1=((-b)+sqrt(delta))/(2*a);
- x2=(c/a)/x1;
- cout<<"x1= "<<x1<<" x2= "<<x2<<endl;
- }
- if(b>0){
- x1=((-b)-sqrt(delta))/(2*a);
- x2=(c/a)/x1;
- cout<<"x1= "<<x1<<" x2= "<<x2<<endl;
- }
- }
- }
- case 9:
- cout << "wype³niamy tablice" << endl;
- srand(time(NULL));
- for(int i=0;i<9;i++){
- tablica[i]=rand()%7+4;
- cout<<tablica[i]<<", ";
- }
- cout<<"dla losowych a,b,c wyliczamy algorytm niestabilny"<<endl;
- for(int k=0;k<3;k++){
- for(int i=0;i<3;i++){
- a=tablica[i];
- }
- for(int i=3;i<6;i++){
- b=tablica[i];
- }
- for(int i=6;i<9;i++){
- c=tablica[i];
- }
- delta=(b*b)-4*a*c;
- if(delta==0){
- x=(-1*b)/(2*a);
- cout<<"x= "<<x<<endl;
- }if(delta<0)
- cout<<"brak rozwiazan"<<endl;
- if(delta>0){
- x1=((-b)+sqrt(delta))/(2*a);
- x2=((-b)-sqrt(delta))/(2*a);
- cout<<"x1= "<<x1<<" x2= "<<x2<<endl;
- }
- }
- case 10:
- cout << "wylosujemy teraz dwie liczby z przedzialu od -5 do 5\n";
- srand (time(NULL));
- x=rand()%((5-(-5))+1)+(-5);
- cout<<"\n1 liczba="<<x;
- y=rand()%((5-(-5))+1)+(-5);
- cout<<"\n2 liczba="<<y;
- cout<<"\nPodaj promien kola=";
- cin>>r;
- cout<<"wyliczamy gdzie lezy punkt A";
- if((r*r)==(x*x)+(y*y))
- cout<<"\nPunkt A lezy na okregu";
- else{
- if((r*r)<(x*x)+(y*y))
- cout<<"\nPunkt A lezy poza okregiem";
- else{
- if((r*r)>(x*x)+(y*y))
- cout<<"\nPunkt A le¿ey w okregu";
- }
- }
- }
- return 0;
- }
- //------------------------------------------------------------------------
- int NWD(int A, int B) {
- int r=0;
- while(B>0) {
- r=A%B;
- A=B;
- B=r;
- }
- return A;
- }
- void sort(int zbior[], int kubelki[]) {
- int lider=10/2;
- bool tak=false;
- for(int i=0; i<10; i++) {
- for(int j=1; j<5; j++) {
- if(zbior[i]==j)
- kubelki[j]++;
- }
- }
- cout << "Kubelki: ";
- for(int k=1; k<5; k++) {
- cout << kubelki[k] << " ";
- }
- cout << "\nLider musi wystapic: " << lider;
- for(int k=1; k<5; k++) {
- if(kubelki[k]>=lider) { //Lider może być 1! Ciekawe co bedzie jak 2 liczby spełnią warunek lidera...
- cout << "\nLider to: " << k;
- tak=true;
- }
- }
- if(tak==false)
- cout << "\nPrzykro mi, brak lidera ;(";
- }
- void minmax(int ciag[]) {
- int Max=INT_MIN;
- int Min=INT_MAX;
- for(int i=0; i<10; i++) {
- if(ciag[i]>Max)
- Max = ciag[i];
- if(ciag[i]<Min)
- Min = ciag[i];
- }
- cout << "\nMaksymalna liczba: " << Max;
- cout << "\nMinimalna liczba: " << Min;
- }
- bool pierwsza(int x) {
- if(x<2) {
- return false;
- }
- for(int i=2; i<=sqrt(x); i++) {
- if(!(x%i)) {
- return false;
- }
- }
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement