cont++; //Tampoco se para que sirve esta variable
la variable cont lo que hace es acumular el número de divisores que tiene un número, luego if (cont==2 || z==1 || z==0)
si el número de divisores que tiene un número es 2 entonces es por definición un número primo.if (cont==2 || z==1 || z==0)
puede quedar if (cont==2)
y funciona igual.Primero que no tienes que comentar el i=0 porque sino el programa no funcionara.
Luego,Código: [Seleccionar]cont++; //Tampoco se para que sirve esta variable
la variable cont lo que hace es acumular el número de divisores que tiene un número, luegoCódigo: [Seleccionar]if (cont==2 || z==1 || z==0)
si el número de divisores que tiene un número es 2 entonces es por definición un número primo.
Los || (comparación or) hará que si se cumple cualquier condición de esas entre en el bucle en este caso la comparación dice que si un número es primo o z==1 o z==0 se añadirá el número a la lista de primos que luego se imprimirá. Z es la variable que se usa como divisor y que nunca será 1 o 0 ya que se inicializa en 1 y entonces z nunca será 0, para la parte de || z==1 tampoco hace falta ya que "z=1;z<=x" como x se inicializa a 1 z hará como mínimo un ciclo y z incrementara a 2 así que el condicional deCódigo: [Seleccionar]if (cont==2 || z==1 || z==0)
puede quedarCódigo: [Seleccionar]if (cont==2)
y funciona igual.
Saludos