Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2005-08-01 23:03:38

  Heniek - Użytkownik

Heniek
Użytkownik
Skąd: Będzin
Zarejestrowany: 2005-07-30

Switch quantity not an integer

Witam to moj pierwszy post :)
Mam nastepujacy problem:
Przy probie skompilowania programu wybija blad:
srednia.cpp:16: error: switch quantity not an integer
Oto zrodlo programu:

Kod:

#include <iostream> 
#include <stdio.h> 
#include <time.h>
using namespace std;
int main() 
{ 
char sciezka[30], ocena[20], celujacy[20], bardzodobry[20], dobry[20], dostateczny[20], dopuszczajacy[20], niedostateczny[20];
double kla, krt, akt, odp, pd, ilekla, ilekrt, ileakt, ileodp, ilepd, srednia,  tn, menu, ks, pol, mat, his, wos, muz, ang, inf, bio, ch, geo, wf, fiz; 
start: 
system("clear"); 
cout << "Co wybierasz?n";
cout << "1-Srednia z Matmyn";
cout << "2-Srednia z Ocenn";
cout << "3-Wyjscien";
cin >> menu;
switch(menu)
{
case 1:
cout << "Witaj w programie do obliczenia sredniej z matematyki!n"; 
cout << "Podaj sume ocen z klasowekn"; 
cin >> kla; 
cout << "Ile masz ocen z klasowek?n"; 
cin >> ilekla; 
cout << "Podaj sume ocen z kartkowekn"; 
cin >> krt; 
cout << "Ile masz ocen z kartkowekn"; 
cin >> ilekrt; 
cout << "Podaj sume ocen z aktywnoscin"; 
cin >> akt; 
cout << "Ile masz ocen z aktywnosci?n"; 
cin >> ileakt; 
cout << "Podaj sume ocen z odpowiedzin"; 
cin >> odp; 
cout << "Ile masz ocen z odpowiedzi?n"; 
cin >> ileodp; 
cout << "Podaj sume ocen z prac domowych i dodatkowychn"; 
cin >> pd; 
cout << "Ile masz ocen z prac domowych i dodatkowych?n"; 
cin >> ilepd; 
srednia=(kla/ilekla*0.40)+(krt/ilekrt*0.20)+(akt/ileakt*0.15)+(odp/ileodp*0.15)+(pd/ilepd*0.10); 
cout << "Twoja srednia wynosi:" << srednia << "n" ; 
if(srednia > 5.5 && srednia < 6) 
{ 
cout << "CELUJACY!n"; 
} 
if(srednia > 4.5 && srednia < 5.51) 
{ 
cout << "BARDZO DOBRYn"; 
} 
if(srednia > 3.5 && srednia < 4.51) 
{ 
cout << "DOBRYn"; 
} 
if(srednia > 2.5 && srednia < 3.51) 
{ 
cout << "DOSTATECZNYn"; 
} 
if(srednia > 1.5 && srednia < 2.51) 
{ 
cout << "DOPUSZCZAJACYn"; 
} 
if(srednia < 1.51) 
{ 
cout << "NIEDOSTATECZNYn"; 
} 
sleep(5);
break;
case 2:
cout << "Podaj ocene z polskiegon";
cin >> pol;
cout << "Podaj ocene z matmyn";
cin >> mat;
cout << "Podaj ocene z historiin";
cin >> his;
cout << "Podaj ocene z WOSun";
cin >> wos;
cout << "Podaj ocene z muzykin";
cin >> muz;
cout << "Podaj ocene z angielskiegon";
cin >> ang;
cout << "Podaj ocene z infyn";
cin >> inf;
cout << "Podaj ocene z biologiin";
cin >> bio;
cout << "Podaj ocene z Chemiin";
cin >> ch;
cout << "Podaj ocene z geografiin";
cin >> geo;
cout << "Podaj ocene z WFun";
cin >> wf;
cout << "Podaj ocene z Fizykin";
cin >> fiz;
ks=pol+mat+his+wos+muz+ang+inf+bio+ch+geo+wf+fiz/12;
cout << "Twoja srednia to.........n";
cout << ks;
sleep(5);
goto start;
break;
case 3:
return 0;
break;
default: 
cout << "Zly wyborn";
break;
}
}

Z gory dziekuje za wszelkie wskazowki ;)
Pozdrawiam

Offline

 

#2  2005-08-01 23:22:59

  zlyZwierz - Moderator

zlyZwierz
Moderator
Zarejestrowany: 2005-02-18
Serwis

Re: Switch quantity not an integer

zadeklaruj zmienną menu jako int.

BTW czy ja tam widziałem goto  ? (a fe... i to w c++)

PS uzywaj raczej skladni zgodnej z ansi czyli #include<iostream> (bez podawania rozszerzenia (.H)

Offline

 

#3  2005-08-02 00:22:09

  Heniek - Użytkownik

Heniek
Użytkownik
Skąd: Będzin
Zarejestrowany: 2005-07-30

Re: Switch quantity not an integer

Dzieki skompilowalo sie jak burza ;)
Oczywiscie naniose poprawki do kodu :)

Offline

 

#4  2005-08-02 20:52:56

  Guest - Gość

Guest
Gość

Re: Switch quantity not an integer

czasami to goto się przydaje (ale żadko, bardzo żaaaaadddkooooo). Za to powinno się palić na stosie (tak jak za częste stosowanie preprocesora lub rzutowania innnego niż *cast<>)

 

#5  2005-09-15 14:56:59

  01000001 - Użytkownik

01000001
Użytkownik
Zarejestrowany: 2005-09-13

Re: Switch quantity not an integer

zmiena i jako int

Offline

 

#6  2005-09-15 15:00:37

  01000001 - Użytkownik

01000001
Użytkownik
Zarejestrowany: 2005-09-13

Re: Switch quantity not an integer

zmiena i jako int

sorki zmieną menu jako int

Offline

 

#7  2005-09-15 19:13:45

  rogos - Moderator

rogos
Moderator
Zarejestrowany: 2005-02-12

Re: Switch quantity not an integer

kurde palic na stosie nie przesesadzajacie jak kto chce to czemu nie oze uzywac goto?? albo nie pisac iostrem.h bo nie jest zgodne... mnie bynajmnej g***o obchodzi czy cos jest zgodne z iso czy nie, wazne by dzialalo tak jak ja chce...


http://img88.imageshack.us/img88/1856/imageslg0.png

Offline

 

#8  2008-12-02 23:02:33

  riker - Użytkownik

riker
Użytkownik
Zarejestrowany: 2008-10-18

Re: Switch quantity not an integer

rogos napisał(-a):

kurde palic na stosie nie przesesadzajacie jak kto chce to czemu nie oze uzywac goto?? albo nie pisac iostrem.h bo nie jest zgodne... mnie bynajmnej g***o obchodzi czy cos jest zgodne z iso czy nie, wazne by dzialalo tak jak ja chce...

Jak robisz program tylko dla siebie i samemu to czemu nie. Inaczej nie moze cie gowno obchodzic...

Ostatnio edytowany przez riker (2008-12-02 23:02:50)

Offline

 

#9  2008-12-03 00:18:49

  sal_i - Członek DUG

sal_i
Członek DUG
Skąd: Neverhood
Zarejestrowany: 2007-01-01

Re: Switch quantity not an integer

riker aleś odkopał :P wątek martwy od ponad 3 lat!!


“Generowanie liczb losowych jest zbyt ważne, żeby zostawiać to przypadkowi”

Offline

 

#10  2008-12-03 01:52:26

  rychu - elektryk dyżurny

rychu
elektryk dyżurny
Skąd: gdańsk/kalmar
Zarejestrowany: 2004-12-28

Re: Switch quantity not an integer

...ale ma rację facet, no i hugo ;)


linux regd. user #248790

Offline

 

#11  2008-12-03 18:27:14

  urug - Członek DUG

urug
Członek DUG
Skąd: Częstochowa
Zarejestrowany: 2008-04-22
Serwis

Re: Switch quantity not an integer

goto czasem się przydaje (np. wyskoczenie z zagnieżdżonej, pętli, czy np. wyszukiwanie w tabeli jakieś wartości - jeśli nie znajduje się to w osobnej funkcji która zwraca odpowiednią wartość np. boolowską)


Pozdrawiam, Tomek

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)