Zrób program w Dev-C++ na podstawie podanego algorytmu w załączniku.
Już sam trochę zacząłem i dołączam to, co już mam, ale można zrobić też nowy (byleby był zgodny z algorytmem).
Bardzo proszę o pomoc :)
" Life is not a problem to be solved but a reality to be experienced! "
© Copyright 2013 - 2024 KUDO.TIPS - All rights reserved.
To co napisałeś pokazuje jedynie, jak bardzo nie znasz C++.
1.`==` to operator porównania, a `=` to operator przypisania.
2.
while (warunek);
{
}
jest czymś KOMPLETNIE różnym od:
while (warunek)
{
}
3.Po co dołączyłeś cstdlib oraz cmath? :|
4.Po co zadeklarowałeś funkcję `main` w ten sposób, skoro i tak nie korzystasz z jej parametrów?
5.Wyrzuć Dev-C++ i pobierz coś normalnego, jak Code::Blocks (chyba, że korzystasz z tego Orwell Dev-C++ 5.x, wtedy jest ok, bo ta wersja jest w-miarę aktualizowana).
6.Ten algorym posiada niejednoznaczny przepływ.
A tutaj program zgodny z pokazanym algorytmem:
http://ideone.com/EhsNob
Oraz - dla czystej formalności - sam kod:
#include <iostream>
using namespace std;
int main()
{
int number, left, right=1000, answer;
while (true)
{
cin >> number;
answer = (left+right) / 2;
if (number == answer)
{
cout << answer;
return 0;
}
if (number > answer)
left = answer; else
right = answer;
}
return 0x0DEFACED;
}
Program :
#include <iostream>
using namespace std;
int main(){
int liczba, lewy = 0, prawy = 1000, odpowiedz = 0;
do {
cout << " podaj liczbe : ";
cin >> liczba;
odpowiedz = (lewy+prawy) / 2;
if (liczba == odpowiedz)
cout << odpowiedz;
if ( liczba > odpowiedz)
lewy = odpowiedz;
else
prawy = odpowiedz;
} while (true);
getchar();
getchar();
return 0;
}
Nie wiem niestety kiedy to dziadostwo zwróci TRUE i wypisze wynik ... :D próbowałem ale nie wychodzi mi zgadnięcie odpowiedniej kombinacji liczb.