Ver Mensaje Individual
  #5 (permalink)  
Antiguo 13/06/2012, 22:29
cesar_casla
 
Fecha de Ingreso: diciembre-2011
Ubicación: CABA
Mensajes: 433
Antigüedad: 12 años, 6 meses
Puntos: 94
Respuesta: alguien tiene idea de como hacer esto en c

Hola!
Cita:
Procedure elecciones ();
Var
votar, cantidadVotosA, cantidadVotosB, cantidadVotosNulos: integer;
Begin
cantidadVotosA:= 0;
cantidadVotosB:= 0;
cantidadVotosNulos:= 0;
For i:= 1 to n do
Begin
read(Votar);
if(votar = 1)then
cantidadVotosA:= cantidadVotosA + 1
else
if(votar = 2)then
cantidadVotosB:= cantidadVotosB +1
else
cantidadVotosNulos:= cantidadVotosNulos +1;
end;
writeln('A obtuvo', cantidadVotosA, 'votos');
writeln('B obtuvo', cantidadVotosB, 'votos');
writeln('Hubo', cantidadVotosNulos, 'votos nulos');
if(cantidadVotosA > cantidadVotosB)then
writeln('El ganador de la eleccion es el candidato A')
else
if(cantidadVotosB > cantidadVotosA)then
writeln('El ganador de la eleccion es el candidato B')
else
writeln('El resultado de la eleccion fue empate');
end;
nose que lenguaje es esto pero esta perfecto(tiene un parecido a bash), ¿¿porque en C no te sale???

En el codigo en C no incluiste el for; te falta inicializar las variables a cero. En ese pseudocodigo pusiste read(Votar); y porque en C queres leer tantas variables???
Código C:
Ver original
  1. scanf("%d %d %d %d %d" ,&votar,&cantidadVotos1,&cantidadVotos2,&cantidadV otosNulos,&integer);

Esto nose por que lo hiciste
Código C:
Ver original
  1. (cantidadVotos1 =1);
  2. (cantidadVotos2 =2);
  3. (cantidadVotosNulos != 1,2); // esto no es valido

Creo q tendrias q revisar un poco mas los conceptos de C antes de continuar con esto, ya que de la otro manera pareciera q la tenes clara.. Afianza esos conceptos y seguro tendria que salirte el programa

Saludos