program c++
Witam.
Potrzebuje napisac program w c++ ktory sprawdzi ktora z podanych liczb jest najmniejsza.
Dane wejsciowe to 4 liczby (bez zera, ulamkow)
zrobilem cos takiego, ale podaje dobry wynik tylko wtedy gdy pierwsza liczba jest najmniejsza, przy 2,3,4 nic nie wyswietla.
Gdzie mam blad ? Czego brakuje ?
z gory dzieki za pomoc...
Potrzebuje napisac program w c++ ktory sprawdzi ktora z podanych liczb jest najmniejsza.
Dane wejsciowe to 4 liczby (bez zera, ulamkow)
zrobilem cos takiego, ale podaje dobry wynik tylko wtedy gdy pierwsza liczba jest najmniejsza, przy 2,3,4 nic nie wyswietla.
Gdzie mam blad ? Czego brakuje ?
#include
#include
using namespace std;
int main()
{
int a,b,c,d;
cout <
cin >> a;
cout <
cin >> b;
cout <
cin >> c;
cout <
cin >> d;
if (a
if (a
if (a
cout <<
else
if (b
if (b
if (b
cout <<
else
if (c
if (c
if (c
cout <<
else
if (d
if (d
if (d
cout <<
cin.ignore();
getchar();
return 0;
}
z gory dzieki za pomoc...
Odpowiedzi: 20
chodzi mi oto, ze obojetnie czy wybiore z tych 3 opcji obliczania pol i obwodu 1 czy 2 czy 3, to i tak program zawsze liczy pole kwadratu, zamiast np obwodu dla 2 i pola prostokata dla 3
gieras:
tak sie teraz bawie, i niestety oba warianty (ze switchem i bez) licza pole kwadratu, obojetnie czy dam 1,2 czy 3 :roll:
tzn jak ?
Jak wpiszesz 1.2 ? Toź zadeklaruj to jako float (lub double).
Lub przez rzutowanie pole_kwadratu = (float)1.2 * 1.2;
tak sie teraz bawie, i niestety oba warianty (ze switchem i bez) licza pole kwadratu, obojetnie czy dam 1,2 czy 3 :roll:
Powinno dzialać choć nie sprawdzałem:
#include
#include
int main()
{
int pole_kwadratu;
int pole_prostokata;
int obwod_kwadratu;
int znak;
int a;
int b;
clrscr();
cout <<
cout <<
cout <<
cin >> znak;
switch (znak)
{
case 1 :
cout <<
cin >> a;
pole_kwadratu = a*a;
cout <<<
break;
case 2 :
cout <<
cin >> a;
cout <<
cin >> b;
pole_prostokata = a*b;
cout <<<
break;
case 3 :
cout <<
cin >> a;
obwod_kwadratu = 4*a;
cout <<<
break;
default : cout <<
}
getch();
return 0;
}
A tutaj ten sam program tylko przy uźyciu switch–case ( tak jak polecił to Bobi :wink: )
#include
#include
using namespace std;
int main()
{
int a, b, c, d, e, polek, polep, obwod;
cout <
cout <
cin >> a;
switch (a)
{
case 1:
cout <
cin >> b;
polek = b*b;
cout <<
break;
case 2:
cout <
cin >> c;
cout <
cin >> d;
polep = c*d;
cout <<
case 3:
cout <
cin >> e;
obwod = 2*e + 2*e;
cout <<
break;
}
cin.ignore();
getchar();
return 0;
}
dzieki bardzo.
a co do switcha, to tez probowalem ale wtedy to mi zupelne pierdoly zaczely wychodzic.
a co do switcha, to tez probowalem ale wtedy to mi zupelne pierdoly zaczely wychodzic.
#include
#include
using namespace std;
int main()
{
int liczba, a, b, c, d, polek, obwod, polep ;
cout <
switch (liczba)
{
case 1: cout <
cin >> a;
polek = a*a ;
cout <<
case 2:
cout <
cin >> b;
obwod = 4*b ;
cout <<
case 3:
cout <
cin >> c;
cout <
cin >> d;
polep = c*d ;
cout <<
}
cin.ignore();
getchar();
return 0;
}
Teraz działa
dowód :wink:
#include
#include
using namespace std;
int main()
{
int a, b, c, d, e, polek, polep, obwod;
cout <
cout <
cin >> a;
if (a=1)
{
cout <
cin >> b;
polek = b*b;
cout <<
}
else if (a=2)
{
cout <
cin >> c;
cout <
cin >> d;
polep = c*d;
cout <<
}
else if (a=3)
{
cout <
cin >> e;
obwod = 2*e + 2*e;
cout <<
}
cin.ignore();
getchar();
return 0;
}
dowód :wink:

Nie lepiej to zrobić switch'em i case'm?
Po co Ci ten else? Wywal go bo przeciez pozniej masz kolejny warunek, a nie w przeciwnym wypadku.
Zawszem mnie uczono, źe instrukcje daje się w klamerkach.
Po co Ci ten else? Wywal go bo przeciez pozniej masz kolejny warunek, a nie w przeciwnym wypadku.
Zawszem mnie uczono, źe instrukcje daje się w klamerkach.
i niestety kolejny problem :(
nie chce mi sie skompilowac, pokazuje
prosze o pomoc, bo sam nie dam rady
#include
#include
using namespace std;
int main()
{
int a, b, c, d, e, polek, polep, obwod;
cout <
cout <
cin >> a;
if (a=1)
cout <
cin >> b;
polek = b*b;
cout <<
else
if (a=2)
cout <
cin >> c;
cout <
cin >> d;
polep = c*d;
cout <<
else
if (a=3)
cout <
cin >> e;
obwod = 2*e + 2*e;
cout <<
cin.ignore();
getchar();
return 0;
}
nie chce mi sie skompilowac, pokazuje
w linijkach kodu z elseexpected primary–expression before "else"
prosze o pomoc, bo sam nie dam rady
-
<p>może napisz <font face="Courier New"></font></p> <p><code>else if (a=3)<br /> cout <<br /> cin >> e;<br /> obwod = 2*e + 2*e;<br /> cout <<</code></p>
gieras:
rozumiem ze to ta "optymalizacja" :Pgusioo:
gieras:
no tak, tylko ze ja nie bardzo wiem o co i jak :wink: a co jest nie tak z tym co zrobil adik154 ?gusioo:
gieras:
dzieki, ale ja robie to do szkoly, i narazie uczylismy sie tylko warunku if else
No to masz zadanie rozwiązane na szóstkę.
Nic – poprostu Adik lubi sie męczyć i duźo pisać.
Ja tam wolę se źycie ułatwiać :lol:
Tak.
rozumiem ze to ta "optymalizacja" :Pgusioo:
gieras:
no tak, tylko ze ja nie bardzo wiem o co i jak :wink: a co jest nie tak z tym co zrobil adik154 ?gusioo:
gieras:
dzieki, ale ja robie to do szkoly, i narazie uczylismy sie tylko warunku if else
No to masz zadanie rozwiązane na szóstkę.
Nic – poprostu Adik lubi sie męczyć i duźo pisać.
Ja tam wolę se źycie ułatwiać :lol:
Programowanie to sztuka.
wszystko jest dobrze tyle ze on to krócej i na bardziej zaawansowanym szczeblu rozwiązał :P
gieras:
no tak, tylko ze ja nie bardzo wiem o co i jak :wink: a co jest nie tak z tym co zrobil adik154 ?gusioo:
gieras:
dzieki, ale ja robie to do szkoly, i narazie uczylismy sie tylko warunku if else
No to masz zadanie rozwiązane na szóstkę.
Nic – poprostu Adik lubi sie męczyć i duźo pisać.
Ja tam wolę se źycie ułatwiać :lol:
no tak, tylko ze ja nie bardzo wiem o co i jak :wink: a co jest nie tak z tym co zrobil adik154 ?gusioo:
gieras:
dzieki, ale ja robie to do szkoly, i narazie uczylismy sie tylko warunku if else
No to masz zadanie rozwiązane na szóstkę.
gieras:
dzieki, ale ja robie to do szkoly, i narazie uczylismy sie tylko warunku if else
No to masz zadanie rozwiązane na szóstkę.
dzieki, ale ja robie to do szkoly, i narazie uczylismy sie tylko warunku if else
Panowie z całym szacunkiem, ale oba pierdzielicie:
P.S: Z zerem sie sami męczcie. Chyba źe zapłacicie :P
#include
using namespace std ;
main(void)
{
static int zbior = 4 ; //źeby nie została zmieniona
int maks, licz ;
cout <
cin >> licz ;
maks = licz ;
for(int temp = 0; temp
{
cout <
cin >> licz ;
if(licz > maks)
{
maks = licz ;
}
cout <<<
}
cout <<<
return 0 ;
}
P.S: Z zerem sie sami męczcie. Chyba źe zapłacicie :P
deev 4.9.9.2
pewnie innego programu uźywasz i dlatego sypneło error.