Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Edit.: Chyba nalezena.
Zdravím, mám za úkol napsat program, který mi určí intervaly pevně dané délky, ve kterých by se měly nacházet kořeny předem dané funkce.
Můj dosavadní postup
#include <iostream>
#include <cstdlib>
using namespace std;
double F(float x){
return x*x-4;
}
int main()
{
int min, max; double step;
cout << "Zadej dolni mez: ";
cin >> min;
cout << "Zadej horni mez: ";
cin >> max;
cout << "Zadej velikost kroku: ";
cin >> step;
// separace
for(int i=0; i<=max-min-1; i++){
if(F(min + i*step)*F(min + (i+1)*step)<=0){
cout << "Nalezena zmena znamenka na intervalu [" << min + i*step << ", " << min + (i+1)*step << "]." << endl;
}
}
return 0;
}Zřejmě bude nějaká logická chyba v tom ifu, ale nevidím ji.
Pozn.: Pro polynom
program správně určí interval [-8.2, -7.9], ale kladný kořen už neodhadne.
Offline