
| ||||
no para nada es una tranca...si mis tareas son en SCHEME... jajajj un lenguaje orrible... jajaja y me piden cosas como una fucion que calcule la energia mecanica o las raices de una ecuacion cuadratica... cosas asi bastante simples... peroi la cosa es que un compañero me pregunto como podia hacerlo y me pillo para no quedarme con la duada lo pregunte aca lo del los multiplos se me ocurre hacer un ciclo de 3 elevado a i de i = 1 hasta i cuanto?? jajaj ese es mi tope... pero en lo de un numero primo o no no se me ocurre nada.. eso saludos
__________________ Haz la guerra en la cama y el amor donde se te de la gana... El tiempo es el mejor maestro, lo único malo es que te mata...¡¡Aprovecha tu tiempo!! Última edición por El_Metallick; 05/10/2005 a las 19:28 |
| ||||
Bueno siendo asi... Mira, sabemos que un numero primo es primo cuando es solamente divisible entre si mismo y la unidad no? Es decir, que si un numero es divisible entre otro, tambien es divisible entre los factores de ese otro ![]() Para este efecto, me parece que deberias utilizar un arreglo ![]() ![]() Para el factorial con una funcion recursiva basta desde m = input n=1 hasta que n =m x = n*n+1 Algo asi ![]() ![]() Salu2,
__________________ "El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera." -- Ernest Hemingway |
| ||||
jajajajjajaja entre ASP, ASP.Net, Scheme y otro ya esto bastante enciclado ya :P jajajjajaj bueno gracias U_G aunque la funcion del factorial ya la tengo lo que queria era saber cuando un numero es multiplo de otro... mmm pero para esos e me acaba de ocurrir una idea poner la divicion entre los dos numeros y si el resto es distinto de 0 es porque dicho numero no es divisible por el numero ingresado y por ende no es multiplo de este... jajaj me respondi solo :P pero bueno gracias = por la "insiracion"? jajaj ciclar es la palabra que necesito para inspirarme jajajajjaj bueno eso gracias nuevamente U_G
__________________ Haz la guerra en la cama y el amor donde se te de la gana... El tiempo es el mejor maestro, lo único malo es que te mata...¡¡Aprovecha tu tiempo!! |
| ||||
Asi es, con tal que sea mayor ![]() esPar(num) Mayor(a,b) Menor(a,b) Salu2,
__________________ "El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera." -- Ernest Hemingway |
| |||
Es algo que me pregunte hace tiempo, hablando con alguien que decia que si encontrabas un numero primo con mas de No recuerdo cuantas cifras te daban la tira de pasta y la verdad es que estuve un rato hasta que di con la forma de ver si el numero es primo o no. Tengo entendido que Los numeros primos son considerados como ARMAMENTO. Puedes buscar un numero o buscar todos los numeros desde 0 al que tu elijas numeromaximobuscado. Como vez tuve que modificar el Server.ScriptTimeout porque si no se quedaba colgado. Te he puesto el codigo tal y como yo lo tenia guardado, prueba a modificar algunos comentarios, Como veraz si se supera un numero de digistos se produce un Stack Overflow Bueno ahi va, tenme al tanto de tus avances. ![]() <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <% Server.ScriptTimeout = 3600 %> <html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title></title></head><body> <% 'An integer in VBScript is between -32,768 and 32,767. 'So, CInt() will throw an error if, for example, you try to convert 33,000 to an integer. ' If your number could be greater than 32,767, use CLng() instead, 'which has a much higher upper bound (2,147,483,647). 'If you need even more than that, use CDbl(). 'Beyond that, convert to a string, because you shouldn't be expecting to use that number for calculations anyway. function fact(xnumero) If xnumero=1 THEN 'RESTODIV = xnumero Mod 1 RESPONSE.Write xnumero & " ES PRIMO <BR>" EXIT FUNCTION end if for i = 2 to xnumero-1 if xnumero Mod i=0 Then RESPONSE.Write "NO ES PRIMO " RESTODIV = xnumero Mod 1 RESPONSE.Write xnumero & " entre " & i & "=" & RESTODIV & "<BR>" EXIT FUNCTION end if ' If fact="" then 'RESTODIV = xnumero Mod i 'RESPONSE.Write xnumero & " entre " & i & "=" & RESTODIV & "<BR>" ' fact= i ' else 'RESTODIV = xnumero Mod i 'RESPONSE.Write xnumero & " entre " & i & "=" & RESTODIV & "<BR>" 'fact=fact & "," & i 'end if next RESPONSE.Write "<b><Font color=blue>" & xnumero &" ES PRIMO </Font></b><BR>" end function%> <% 'numerobuscado=request.form("numerobuscado") 'numeromaximobuscado=request.form("numeromaximobus cado") 'numerobuscado=10000000000000000000000000000000000 00000000000000000000000000000000000000000000000000 000000000000000 numerobuscado=828 'numerobuscado=1000000000 'numerobuscado=10000000000 'numerobuscado=CLng(numerobuscado) 'numerobuscado=CDbl(numerobuscado) 'numeromaximobuscado=1000 'numeromaximobuscado=1000000000 IF numerobuscado<>"" THEN Response.write fact(numerobuscado) & "<BR>" Response.write "DIGITOS " & LEN(numerobuscado) END IF IF numeromaximobuscado<>"" THEN for k=1 TO numeromaximobuscado Response.write fact(K) Response.write "<HR color=blue width=1000>" 'Response.fLUSH() 'Response.end() next END IF%> </body> </html> |