Напишете функция, която намира и отпечатва решенията на уравнението: a.x+b=0.
По желание: Напишете функция, която намира решенията на уравнението: a.x+b=0, но не го отпечатва, а го връща в резултат.
Напишете функция, която намира и отпечатва решенията на уравнението: a.x+b=0.
По желание: Напишете функция, която намира решенията на уравнението: a.x+b=0, но не го отпечатва, а го връща в резултат.
[c] за С++ програми [/c]
[pascal] за паскал [/pascal]

за Къде се намира точка
за Вмъкване и изтриване на елемент *
за Позицията на X




за Броят на максималните елементи




за Броят на максималните елементи
за Пари за закуска




за Ученици с дадена оценка




за По-големи от средното| П | В | С | Ч | П | С | Н |
|---|---|---|---|---|---|---|
| « февр. | ||||||
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | |
void uravnenie (double a,double b) { if ((a==0) && (b==0)) cout<<"vsqko x e reshenie"<<endl; else if (b==0) cout<<"x e ravno na nula"<<endl; else if (a==0) cout<<"nqma reshenie "<<endl; else cout<<"x = "<<((-b)/a) <<endl; }; int lineino (double a,double b, double &x) { if ((a==0) && (b==0)) return 3; else if (b==0) return 2; else if (a==0) return 1; else { x=((-b)/a); return 0; } } int main() { double a,b,x; cout<<"vuvedete a:"<<endl; cin>>a; cout<<"vuvedete b:"<<endl; cin>>b; int r=lineino (a,b,x); if (r==1) cout<<"nqma reshenie"<<endl; else if (r==2) cout<<"x=0"<<endl; else if (r==3) cout <<"vsqko x e reshenie"<<endl; else cout<< "reshenieto e"<<x<<endl; system("PAUSE"); return EXIT_SUCCESS; }Вярно! Функцията може да бъде направена и така:
int lineino (double a,double b, double &x) { if (a==0) if(b==0) return 3; // всяко х е решение else return 1; // няма решение else { // има едно решение x=-b/a; return x; }#include <cstdlib> #include <iostream> using namespace std; // funkciqta,koqto otpechatva reshenieto void reshenie(int a,int b) { if ((a==0) && (b!=0)) cout<<"nqma reshenie"<<endl; else if ((a==0) && (b==0)) cout<<"vsqko x e reshenie"<<endl; else if ((a>0) && (b>0)) cout<<"reshenieto e"<<(-b/a)<<endl; } // funkciqta,koqto vrushta reshenieto int reshenie2(int a,int b,int &x) { if ((a==0) && (b!=0)) return 1; else if ((a==0) && (b==0)) return 2; else if ((a>0) && (b>0)) { x=-b/a; return 3; } } int main(int argc, char *argv[]) { int a,b,x; cout<<"Vuvedete a i b"<<endl; cin>>a>>b; reshenie(a,b); switch (reshenie2 (a,b,x)) { case 1 : cout<<"nqma reshenie"<<endl; break; case 2 : cout<<"vsqko x e reshenie"<<endl; break; case 3 : cout<<"reshenieto e"<<x<<endl; break; } system("PAUSE"); return EXIT_SUCCESS; }не съм съгласен за проверката if ((a>0) && (b>0)) – няма нужда от нея. Освен това така както сте направили задачата ще има случаи в които reshenie няма да отпечатва нищо, а reshenie2 не е определено какъв резултат ще върне.