1.Napisz program podający MOŻLIWE ROZWIĄZANIA równania mx-7=0. Zmienna m jest typu rzeczywistego.
2. Napisz program podający ILOŚĆ ROZWIĄZAŃ równania ax+5=0. Zmienna a jest typu rzeczywistego.
Program napisany w języku C++
kamas248
Jeżeli faktycznie jesteś w gimnazjum i na informatyce programujecie w c++ to dzięki tobie odzyskałem wiarę w to, że w tym kraju istnieją jeszcze nauczyciele informatyki, którzy głęboko w dupie mają podstawę programową MEN-u i zajmują się nauczaniem sensownych rzeczy, a nie np. wpisywaniem banii za brak notatki....zazdroszczę ci (ale jednak coś mi się nie chce wierzyć, że to zadanie z gimnazjum) ;)
No ale porzejdźmy do rzeczy. Zadania podane przez ciebię są według mnie troche bezsensu, bo te równania z parametrem mają nieskończenie wiele rozwiązań. 1. Uproiśćmy równanie: mx-7=0 mx = 7 x = 7/m Jedynym w miare sensownym rozwizaniem tego zadania które przyszło mi do głowy byłoby napisanie programu, który podałby częśc możliwych rozwiązań (no bo komp ma ograniczoną pamięć i niezna pojęcia nieskończoności). Zasada jego działania jest taka, że najpierw wczytuje ile rozwiązań ma podać (od 1 do 100 - mozesz zmienić zakres) i potem pętla w pętli for zostaje obliczona wartość x dla m za każdym razem zwiększanego o 1. Zauważmy, że m nie może być równe 0.
Kod programu, skompiluj np. w dev-c++: #include <cstdlib> #include <iostream>
using namespace std;
int main(int argc, char *argv[]) { long double n, x; cout << "Program ten podaje mozliwe rozwiazania rownania mx-7=0"; cout << "\nPodaj ilosc rozwiazan, ktore chcesz otrzymac (1-100): "; while ((!(cin >> n)) || n == 0 || n > 10000) { // sprawdzanie poprawności wejścia cin.clear(); cin.ignore(100, '\n'); cout << "\nPodaj prawidlowe dane: "; } for (long double m = 1;m<=n;m++) { x = 7/m; cout << "\nDla m = " << m << " rozwiazaniem tego rownania jest " << x; } cout << "\n"; system("PAUSE"); return EXIT_SUCCESS; }
Możesz także przerobić ten program, żeby podawał rozwiąznie dla konkretnej liczby.
2. Tutaj chyba wystarczy taki kod ;):
#include <cstdlib> #include <iostream>
using namespace std;
int main(int argc, char *argv[]) { cout << "Rownanie ax+5=0 posaida nieskoncznie wiele rozwiazan\n"; system("PAUSE"); return EXIT_SUCCESS; }
No ale porzejdźmy do rzeczy.
Zadania podane przez ciebię są według mnie troche bezsensu, bo te równania z parametrem mają nieskończenie wiele rozwiązań.
1. Uproiśćmy równanie:
mx-7=0
mx = 7
x = 7/m
Jedynym w miare sensownym rozwizaniem tego zadania które przyszło mi do głowy byłoby napisanie programu, który podałby częśc możliwych rozwiązań (no bo komp ma ograniczoną pamięć i niezna pojęcia nieskończoności). Zasada jego działania jest taka, że najpierw wczytuje ile rozwiązań ma podać (od 1 do 100 - mozesz zmienić zakres) i potem pętla w pętli for zostaje obliczona wartość x dla m za każdym razem zwiększanego o 1. Zauważmy, że m nie może być równe 0.
Kod programu, skompiluj np. w dev-c++:
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
long double n, x;
cout << "Program ten podaje mozliwe rozwiazania rownania mx-7=0";
cout << "\nPodaj ilosc rozwiazan, ktore chcesz otrzymac (1-100): ";
while ((!(cin >> n)) || n == 0 || n > 10000) { // sprawdzanie poprawności wejścia
cin.clear();
cin.ignore(100, '\n');
cout << "\nPodaj prawidlowe dane: ";
}
for (long double m = 1;m<=n;m++) {
x = 7/m;
cout << "\nDla m = " << m << " rozwiazaniem tego rownania jest " << x;
}
cout << "\n";
system("PAUSE");
return EXIT_SUCCESS;
}
Możesz także przerobić ten program, żeby podawał rozwiąznie dla konkretnej liczby.
2. Tutaj chyba wystarczy taki kod ;):
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
cout << "Rownanie ax+5=0 posaida nieskoncznie wiele rozwiazan\n";
system("PAUSE");
return EXIT_SUCCESS;
}
Pozdro
kamas248