... bueno espero su ayuda saludos y gracias de antemano
| ||||
| 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 ya no me entendi ni yo!Para este efecto, me parece que deberias utilizar un arreglo almacenando cierta cantidad de numeros, vamos a decir, 100, despues tendras que pedir el numero a probar, con ese numero tendras que buscar la division entre cualquiera de los numeros del arreglo, si el residuo de dicho numero antes o despues de si mismo, y de la unidad, es = 0 entonces no es primo Para el factorial con una funcion recursiva basta desde m = input n=1 hasta que n =m x = n*n+1 Algo asi ahi ta la idea, ahora es cuestion de que pongas a ciclar tu maquina y tu cerebro.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 va creciendo la biblioteca de funciones que necesitas.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> |
Este tema le ha gustado a 1 personas (incluyéndote)