<html><body bgcolor="#FFFFFF"><div><div>Ariel Tarifeño escribió:<br></div></div><div><br></div><div></div><blockquote type="cite"><div><div>Estoy tratando de traducir un seudocodigo de la U pero me da muchos errores al compilar y no entiendo aun que esta mal.</div>
<div> </div>
<div><font style="BACKGROUND-COLOR: #ffff99">#include <stdio.h><br>#include <conio.h></font></div>
<p><font style="BACKGROUND-COLOR: #ffff99">int Factorial(int N)<br>{<br> int Fact; </font></p></div></blockquote>Recuerda que cuando declaras una variable y no la inicializas con algún valor ésta toma cualquier valor que se encuentre en al área de memoria que se le asignó a dicha variable, es decir, contiene 'basura'. <div><br class="webkit-block-placeholder"></div><div>Aquí arriva declaraste 'Fact' pero no le diste ningún valor inicial. Inicialízalo en 1: </div><div> int Fact = 1;</div><div><blockquote type="cite"><div><p><font style="BACKGROUND-COLOR: #ffff99"><br> While (N > 0)</font></p></div></blockquote>Debes respetar las palabras del lenguaje incluyendo mayúsculas y minúsculas. El bucle debería se ser 'while' no 'While'<br><blockquote type="cite"><div><p><font style="BACKGROUND-COLOR: #ffff99"><br> {<br> Fact = Fact * N;<br> N = N - 1;<br> }<br> return Fact;<br>}</font></p>
<p><font style="BACKGROUND-COLOR: #ffff99">int EsPrimo(int N)<br>{<br> If ((Factorial(N-1)+1) % N == 0)<br> Return 1;</font></p></div></blockquote>Aquí pasa lo mismo, debe ser 'return' no 'Return'<br><blockquote type="cite"><div><p><font style="BACKGROUND-COLOR: #ffff99"><br> else<br> return 0;<br>}</font></p>
<p><font style="BACKGROUND-COLOR: #ffff99">void main ()</font></p></div></blockquote>En C++ por estándar debes utilizar 'int main()' para devolver a la función con un valor entero (int) en vez de utilizar 'void main()'.<br><blockquote type="cite"><div><p><font style="BACKGROUND-COLOR: #ffff99"><br>{<br> int i;<br> clrscr();<br> printf("Ingrese numero: ");<br> scanf("%d", &i);<br> if(EsPrimo(i))<br> printf("El numero es primo");<br>
else<br> printf("El numero no es primo");</font></p>
<p><font style="BACKGROUND-COLOR: #ffff99"> getch();</font></p></div></blockquote><div>Aquí, como dije, tienes que devolver a la función 'main()' un valor entero, en este caso el valor 0 (cero) para indicar que todo terminó correctamente. Esto sería así:</div><div><br class="webkit-block-placeholder"></div><div>return 0;</div><blockquote type="cite"><div><p><font style="BACKGROUND-COLOR: #ffff99"><br>}</font></p></div></blockquote><br></div><div>Ojalá y ésto te ayude un poco. </div><div>Saludos</div></body></html>