Witam!
Mam maly problem z programem ktory robie na studia na zaliczenie.
Program ma sluzyc do liczenia glosow w wyborach prezydenckich i na podstawie tych glosow wskazac zwyciezce.
O to co udalo mi sie do tej pory napisac:
#include<iostream>
using namespace std;
int main()
{
int choice;
double votes = 0, hc = 0, dt = 0, mo = 0, it = 0;
do{
cout<<"\n\n\tElectronic Vote System"
"\n\n1)Hillary Clinton"
"\n2)Donald Trump"
"\n3)Michele Obama"
"\n4)Ivanka Trump"
"\n\nCast your ballot for? ( 1, 2, 3, or 4)" ;
cin>>choice;
if (choice==1) votes = votes + 1, hc = hc+1;
if (choice==2) votes = votes + 1, dt = dt+1;
if (choice==3) votes = votes + 1, mo = mo+1;
if (choice==4) votes = votes + 1, it = it+1;
if (choice!=1,2,3,4) cout<<"error";
}while (choice!=5);
cout<<"\n\nFINAL TALLY["<<votes<<" total votes cast]";
cout<<"\nHillary Clinton - "<<hc;
cout<<"\nDonald Trump - "<<dt;
cout<<"\nMichele Obama -"<<mo;
cout<<"\nIvanka Trump -"<<it;
return 0;
}
Pierwszy problem pojawil mi sie przy lini 20. Musze kazac programowi napisac "ERROR" kiedy wybor nie jest jakims kandydatem czyli 1,2,3,4 albo zakonczeniem wyborow czyli 5, a nastepnie petla ma byc kontynuowana. Dotyczy to rowniez wpisania czekogolwiek, nie tylko liczb. Zamiast tego za kazdym razem wyskakuje mi error i petla sie powtarza (nawet jesli dobrze zaglosuje), a jezeli wpisze cos innego niz liczby petla zaczyna wyskakiwac w nieskoczonosc.
Nastepnym problemem bylo wskazanie zwyciezcy. Napisalem cos w stylu
if(hc>dt,mo,it) cout<<"\nThe winner is: Hillary Clinton!";
i takie linie dla kazdego z kandydatow, ale nie dzialalo.
Tak wiec potrzebuje zeby mi ktos napisal lub naprowadzil na to jak mam zmienic linie
if (choice!=1,2,3,4) cout<<"error";
tak zeby kiedy wpisze cokolwiek nie liczac 1,2,3,4,5 to wyskakiwalo "error" i zeby petla dalej dzialala, oraz zeby na koniec wskazalo zwyciezce oraz miejsca jakie poszczegolny kandydat zdobyl, nawet jezeli ktorys z kandydatow mial by tyle samo glosow musze wskazac remis.