Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstdlib>
- using namespace std;
- const int a=1;
- int dane()
- {
- bool check=false;
- int x;
- system("pause");
- system("cls");
- cout <<"Podaj b, aby obliczyc sume ciagu liczb naturalnych: ";
- do
- {
- cin >> x;
- if(!cin || x<=1)
- {
- cin.clear();
- cin.sync();
- cout <<"Podaj poprawna liczbe !: ";
- }
- else
- check=true;
- }
- while(check==false);
- return x;
- }
- int forem(int b)
- {
- int sum=0;
- for(int i=a; i<=b; i++)
- {
- sum+=i;
- }
- return sum;
- }
- int whilem(int b)
- {
- int i=a, sum=0;
- while(i<=b)
- {
- sum+=i;
- i++;
- }
- return sum;
- }
- int rekurencja(int b)
- {
- if(b<1)
- return 0;
- return b+rekurencja(b-1);
- }
- int dowhile(int b)
- {
- int i=a, sum=0;
- do
- {
- sum+=i;
- i++;
- }
- while(i<=b);
- return sum;
- }
- main()
- {
- char x, check;
- int b, wynik;
- do
- {
- cout <<"Program oblicza sume ciagu liczb naturalnych.\nWybierz sposob obliczania \nA(do while) \nB(while) \nC(for) \nD(rekurencyjnie)\nOblicz przy pomocy : ";
- do
- {
- cin >> x;
- if(x!='a' && x!='A' && x!='b' && x!='B' && x!='C' && x!='c' && x!='d' && x!='D')
- cout <<"\nPodaj A/B/C/D : ";
- }
- while(x!='a' && x!='A' && x!='b' && x!='B' && x!='C' && x!='c' && x!='d' && x!='D');
- b=dane();
- switch(x)
- {
- case 'a':
- {
- system("pause");
- system("cls");
- wynik=dowhile(b);
- break;
- }
- case 'A':
- {
- system("pause");
- system("cls");
- wynik=dowhile(b);
- break;
- }
- case 'b':
- {
- system("pause");
- system("cls");
- wynik=whilem(b);
- break;
- }
- case 'B':
- {
- system("pause");
- system("cls");
- wynik=whilem(b);
- break;
- }
- case 'c':
- {
- system("pause");
- system("cls");
- wynik=forem(b);
- break;
- }
- case 'C':
- {
- system("pause");
- system("cls");
- wynik=forem(b);
- break;
- }
- case 'd':
- {
- system("pause");
- system("cls");
- wynik=rekurencja(b);
- break;
- }
- case 'D':
- {
- system("pause");
- system("cls");
- wynik=rekurencja(b);
- break;
- }
- default:
- {
- cout <<"\nPodaj A/B/C : ";
- cin >>x;
- }
- }
- cout <<"Suma ciagu wynosi: "<<wynik<<endl;
- cout <<"\nZakoncz program (T), Wykonaj ponownie (N): ";
- do
- {
- cin >>check;
- if(check!='t' && check!='T' && check!='n' && check!='N')
- cout <<"\nPodaj T/N : ";
- }
- while(check!='t' && check!='T' && check!='n' && check!='N');
- system("cls");
- }
- while(check=='n' || check=='N');
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement