C/Visual C - Array hasta que se introduzca el -1

 
Vista:
sin imagen de perfil

Array hasta que se introduzca el -1

Publicado por Ainoa (2 intervenciones) el 11/10/2014 12:37:51
Hola.

Me gustaría saber como realizar este ejercicio:

Codificar un programa en C que lea un array de números naturales de un máximo de 100 elementos. El programa debe
mostrar por pantalla los elementos pares almacenados en el array y la posición en la que se encuentra cada número par.
 Se recomienda que el algoritmo se implemente en dos fases:
 Lectura de números hasta leer el –1 (condición de finalización) o haber tecleado 100 elementos.
 Recorrido del array comprobando si el elemento actual es múltiplo de dos, en cuyo caso mostrara su valor y
la posición en la que se encuentra dentro del array.

este es el codigo que tengo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <stdio.h>
 
int main (){
 
	int num[6],cont =0;
 
 
	do{
 
		printf ("Dame un numero: ");
		scanf ("%d",&num[cont]);
		fflush (stdout);
		}
	while( num[cont]!=1);
 
	for (cont=0; cont<6; cont++){
	if (num[cont]%2==0 && num[cont] != 0){
			printf ("Encontrado par en la posicion %d de valor %d\n",cont, num[cont]);
	}
}
 
 
return 0;
 
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Array hasta que se introduzca el -1

Publicado por Daniel (4 intervenciones) el 13/10/2014 21:35:22
Podrías usar la sentencia break si el valor leido por teclado es igual a -1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Array hasta que se introduzca el -1

Publicado por Ainoa (2 intervenciones) el 13/10/2014 22:25:22
Se supone que no hemos dado eso en clase y no se si se podria usar...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Array hasta que se introduzca el -1

Publicado por Juan (6 intervenciones) el 13/11/2014 10:30:51
Supongo que ya lo tienes solucionado, pero sería posible que pidieras por teclado el número máximo de elementos o que introdujeras una pregunta para decidir si se termina (quedaría más fino seguramente).

Por otra parte, una vez que tienes el número de elementos que vas introducir el do while te podría quedar así

do{
<código>

while (num[cont]<max) && (num[cont] != -1) /// Siendo max el número de elementos que eligió el cliente como máximo de elementos a meter.

Después con el FOR recorres todo el array como lo tienes puesto, pero cambiando la condición del for:

for( i=0; i<cont; i++) // Siendo cont el número de elementos finales que tiene el array.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar