programacion Javascript

Foro relativo a temas de tecnología que no esten contemplados en otra categoría del foro.
Avatar de Usuario
atarox
expert
expert
Mensajes: 1320
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 0
Ubicación: stgo.
Contactar:

programacion Javascript

Mensaje por atarox »

haber quien es capi..


ingresar dos valores enteros distintos luego mostrar:los valores enteros comprendidos entre los ingresados (incluidos los ingresados) cuantos valores son la suma de los valores y cuantos impares hay
Avatar de Usuario
vitoco
expert
expert
Mensajes: 869
Registrado: Mié Nov 08, 2006 7:25 pm
Reputación: 5
Contactar:

Re: programacion Javascript

Mensaje por vitoco »

¿Necesitas que te hagan la tarea?

XD

Hint:

Código: Seleccionar todo

perl -e "for $x (<>..<>) {$c++;$s+=$x;$i++ if $x%2;print qq!$x !} print qq!\n$c $s $i\n!"
Avatar de Usuario
rigohoward
expert
expert
Mensajes: 1213
Registrado: Dom Feb 19, 2012 1:10 pm
Reputación: 0
Ubicación: Santiago - San Miguel

Re: programacion Javascript

Mensaje por rigohoward »

jajaj se nota mucho que es una peticion del profesor :p
Avatar de Usuario
AsCrNet
hard player
hard player
Mensajes: 472
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 0
Ubicación: PHO
Contactar:

Re: programacion Javascript

Mensaje por AsCrNet »

chaaaa no queris na !!!! solo te falto pedir un flipper ]-)

Bueno suponiendo que realmente necesitas la ayuda aqui te hice un ejemplo, el cual pide el ingreso de 2 numeros y hace los numeros intermedios. Tienes que completarlo con el ejemplo del vitoco la idea no es hacerte el ejercicio completo para que pienses un poquito :-°

Código: Seleccionar todo

<html>
<head>
   <title>Ejemplo por AsCrNet</title>
</head>
<script type="text/javascript">
function ingresonum()
{
 var x="Lista de numeros : ";
 var i=0;
 var n1=prompt("Ingrese primer numero ","");
 var n2=prompt("Ingrese segundo numero ","");

 if (n1!=null && n2!=null)
 {
   for (i=parseInt(n1); i<=parseInt(n2) ; i++) x=x+i+" ";
   document.getElementById("mensaje").innerHTML=x;
 } else { 
   x="Ingrese numeros !!!";
 }
 document.getElementById("mensaje").innerHTML=x;
}
</script>
<body>
<p>Click en el boton para ingresar numeros</p>
<button onclick="ingresonum()">Ingreso</button>
<p id="mensaje">...</p>
</body>
</html>
Si tienes dudas de JavaScript te recomiendo esta web

Saludos
Avatar de Usuario
atarox
expert
expert
Mensajes: 1320
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 0
Ubicación: stgo.
Contactar:

Re: programacion Javascript

Mensaje por atarox »

mi bakan!!!! el finde hice el puto ejercicio. y algo me resulto. los numeros y la wea. pero estos tan mas comprimidos! wena gracias cabrones!!!!
Avatar de Usuario
vitoco
expert
expert
Mensajes: 869
Registrado: Mié Nov 08, 2006 7:25 pm
Reputación: 5
Contactar:

Re: programacion Javascript

Mensaje por vitoco »

atarox escribió:mi bakan!!!! el finde hice el puto ejercicio. y algo me resulto. los numeros y la wea.
¿Y cómo quedó?

También quiero aprender...
Avatar de Usuario
rigohoward
expert
expert
Mensajes: 1213
Registrado: Dom Feb 19, 2012 1:10 pm
Reputación: 0
Ubicación: Santiago - San Miguel

Re: programacion Javascript

Mensaje por rigohoward »

Tenía unos minutos libres en la pega y quería experimentar con ABAP Objects (ABAP orientado a objetos):

Código: Seleccionar todo

*&---------------------------------------------------------------------*
*&  Include           ZEX_NUMTOP
*&---------------------------------------------------------------------*

*********************************************************************
* L C L _ N U M E R O S
*********************************************************************

*---- LCL Números - Definición
CLASS LCL_NUMEROS DEFINITION.
  PUBLIC SECTION.
    TYPES:
      BEGIN OF TI_RANGO,
          NUM TYPE I,
      END OF TI_RANGO.

    METHODS:
      CONSTRUCTOR IMPORTING IM_NUM_INF TYPE I
                            IM_NUM_SUP TYPE I.

    METHODS:
      MOSTRAR_RANGO,
      SUMAR_RANGO.

    CLASS-METHODS: TOTAL_IMPARES.


  PROTECTED SECTION.
    CLASS-DATA: GV_NUM_DE_IMPARES TYPE I,
                GV_SUMA TYPE I,
                GV_RANGO TYPE TI_RANGO,
                GV_LISTA TYPE TABLE OF TI_RANGO,
                GV_NUMPAR TYPE I.


  PRIVATE SECTION.

ENDCLASS.


*--- LCL Números- Implementación
CLASS LCL_NUMEROS IMPLEMENTATION.

  METHOD CONSTRUCTOR.
    GV_RANGO-NUM = IM_NUM_INF.
      APPEND GV_RANGO TO GV_LISTA.

    WHILE GV_RANGO-NUM GE IM_NUM_INF AND
    GV_RANGO-NUM LE IM_NUM_SUP.
      GV_RANGO-NUM = GV_RANGO-NUM + 1.
      IF NOT GV_RANGO-NUM GT IM_NUM_SUP.
        APPEND GV_RANGO TO GV_LISTA.
      ENDIF.
    ENDWHILE.

  ENDMETHOD.

  METHOD MOSTRAR_RANGO.
    WRITE:/ 'Los números comprendidos en el rango son: '.
    LOOP AT GV_LISTA INTO GV_RANGO.
      WRITE:/ GV_RANGO-NUM.
    ENDLOOP.
  ENDMETHOD.

  METHOD SUMAR_RANGO.
    LOOP AT GV_LISTA INTO GV_RANGO.
      GV_SUMA = GV_SUMA + GV_RANGO-NUM.
    ENDLOOP.
    WRITE:/ 'La suma de los números comprendidos en el rango es: ',
    GV_SUMA.
  ENDMETHOD.


  METHOD TOTAL_IMPARES.
    LOOP AT GV_LISTA INTO GV_RANGO.
      GV_NUMPAR = GV_RANGO-NUM MOD 2.
      IF  GV_NUMPAR EQ 0.
        GV_NUM_DE_IMPARES = GV_NUM_DE_IMPARES + 1.
      ENDIF.
    ENDLOOP.
    WRITE: / 'El número total de números impares es:', GV_NUM_DE_IMPARES.
  ENDMETHOD.

ENDCLASS.

Código: Seleccionar todo

*&---------------------------------------------------------------------*
*& Report  ZEJERCITA_NUMEROS
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZEJERCITA_NUMEROS.


INCLUDE ZEX_NUMTOP.

DATA: GV_NUMEROS TYPE REF TO LCL_NUMEROS.

START-OF-SELECTION.

  CREATE OBJECT GV_NUMEROS
    EXPORTING IM_NUM_INF = 1 " Número entero inferior
              IM_NUM_SUP = 5. " Número entero límite

  CALL METHOD GV_NUMEROS->MOSTRAR_RANGO.
  WRITE:/.
  CALL METHOD GV_NUMEROS->SUMAR_RANGO.
  WRITE:/.
  CALL METHOD GV_NUMEROS->TOTAL_IMPARES.
Avatar de Usuario
atarox
expert
expert
Mensajes: 1320
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 0
Ubicación: stgo.
Contactar:

Re: programacion Javascript

Mensaje por atarox »

oye la programacion en ABAP que onda. las rutinas estan rediseñadas. la instruccion matematica en el cuento no la veo!! 8-|
Avatar de Usuario
rigohoward
expert
expert
Mensajes: 1213
Registrado: Dom Feb 19, 2012 1:10 pm
Reputación: 0
Ubicación: Santiago - San Miguel

Re: programacion Javascript

Mensaje por rigohoward »

atarox escribió:oye la programacion en ABAP que onda. las rutinas estan rediseñadas. la instruccion matematica en el cuento no la veo!! 8-|
Jaja, el lenguaje es de alto nivel pero lee bien, entre nombres de variables seguramente te perdiste :P, el programa tiene un ejecutable principal (report) de donde son llamados los métodos y un include donde escribi la clase y su implementación (lógica de los métodos)
Avatar de Usuario
atarox
expert
expert
Mensajes: 1320
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 0
Ubicación: stgo.
Contactar:

Re: programacion Javascript

Mensaje por atarox »

lo expuesto
como ven. en mi codigo no importa si ingreso com primer digito el 20 por ej. y segundo el 1 .. ya que el primer bloque de IF ordena mis numeros
//* si uno es menor que dos. uno = inicio dos=fin. sino es lo contrario. despues los bloques de FOR. son para mostrar los Impares y los numeros entre los numeros ingresados. me encantaria ver la suma de los Impares.. que seria lo ultimo que falta en este ejercicio. es decir. impar 1 + impar 2 + imp3 y si. es decir una suma.factorial. quien me puede ayudar con eso, hay que setear la variable como parseInt o parseFloat.. saludos

<script language="javascript">
var uno=prompt('Ingresar primer numero');
var dos=prompt('Ingresar segundo numero');
var impar=0;
var inicio=0;
var fin=0;

if(uno<dos){
inicio=uno;fin=dos;
} else {
inicio=dos;fin=uno;
}

document.write("impares entre los nuemeros" + "<br>" + "<hr>");

for(impar = inicio; impar <= fin; impar++)
if((impar % 2) != 0) {
document.writeln(impar + "<br>" ) }

if((impar % 2) != 2) {
document.writeln(impar + "<br>" ) }

document.write("enteros entre los numeros" + "<br>" + "<hr>" );

for ( var i=inicio; i<= fin; i++ ) {
document.write(i+"<br>" );
}

</script>

<br />
<b> ESTOS SON LOS RESULTADOS </b>



</head>

<body>
</body>
</html>
Avatar de Usuario
AsCrNet
hard player
hard player
Mensajes: 472
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 0
Ubicación: PHO
Contactar:

Re: programacion Javascript

Mensaje por AsCrNet »

atarox escribió:....es decir. impar 1 + impar 2 + imp3 y si. es decir una suma.factorial. quien me puede ayudar con eso, hay que setear la variable como parseInt o parseFloat..
aer el parse es para pasar de un string a numérico, parseInt (para numero enteros) y parseFloat (para numero con decimal).

Para hacer lo que te falta solo tienes que agregar 3 líneas:

-Una variable (var totalimpar=0;)
-Un acumulador de la variable. (totalimpar = totalimpar+ impar;)
-Un mostrar la variable. (document.write("<br>Suma total Imparshhhhh : " +totalimpar);)

Ejemplo :

Código: Seleccionar todo

<script language="javascript">
var uno=prompt('Ingresar primer numero');
var dos=prompt('Ingresar segundo numero');
var impar=0;
var inicio=0;
var fin=0;
var totalimpar=0;

if(uno<dos){
inicio=uno;fin=dos;
} else {
inicio=dos;fin=uno;
}

document.write("impares entre los nuemeros" + "<br>" + "<hr>");

for(impar = inicio; impar <= fin; impar++)
if((impar % 2) != 0) {
document.writeln(impar + "<br>" ) 
totalimpar = totalimpar+ impar;
}

if((impar % 2) != 2) {
document.writeln(impar + "<br>" ) }

document.write("enteros entre los numeros" + "<br>" + "<hr>" );

for ( var i=inicio; i<= fin; i++ ) {
document.write(i+"<br>" );
}

document.write("<br>Suma total Imparshhhhh : " +totalimpar);

</script>
Saludos
Avatar de Usuario
atarox
expert
expert
Mensajes: 1320
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 0
Ubicación: stgo.
Contactar:

Re: programacion Javascript

Mensaje por atarox »

no corre po brother

sale

Suma total Imparshhhhh : 0135791113151719

no te los sumo solo los mostro como caracteres...(parseInt)? ..XD :D
xt5
expert
expert
Mensajes: 512
Registrado: Mar Sep 18, 2007 1:16 am
Reputación: 0
Contactar:

Re: programacion Javascript

Mensaje por xt5 »

atarox, aqui te dejo un codigo Javascript funcional que te hace todo lo que pides:

Código: Seleccionar todo

<script language="javascript">
n=[parseInt(prompt("ingrese numero 1", ""), 10), parseInt(prompt("ingrese numero 2", ""), 10)].sort(function(a,b){return a-b});

for(i=n[0]; i<=n[1]; ++i) document.write(i+"<br>");

st=(n[1] * (n[1]+1) - (n[0]-1) * n[0])/2;  // calcula la suma total
n[0]+=1-(n[0]%2); // ajusta extremo menor hacia el centro
n[1]-=1-(n[1]%2); // ajusta extremo mayor hacia el centro
ci=(n[1]-n[0])/2 + 1; // calcula cantidad impares
si=((n[0]+n[1])/2) * ci; //calcula suma impares

document.write("suma total: " + st + " <br>");
document.write("cantidad impares: " + ci + " <br>");
document.write("suma impares: " + si + " <br>");
document.write("suma pares: " + (st - si) + " <br>");
</script>
Tanto la suma total como la de numeros pares o impares se puede hacer de manera inductiva (como mi ejemplo), esto tiene la ventaja que en algoritmia tiene un costo computacional de O(1) en vez de O(n) como cuando usas un acumulador dentro de un iterador.

En terminos mas simples si tu numero menor es 1 y el mayor 1.000.000, con la solucion del acumulador te tomara 1.000.000 unidades de tiempo en resolver, y con la solucion inductiva te toma un tiempo constante (en la practica en este caso seria cercano a una unidad), por lo que si tus rango es de 1 a 1.000.000 la solucion O(1) es aprox. un millon de veces mas eficiente que la O(n).

Respecto a parseInt, toma en consideracion que siempre debes poner la base numerica con que vas a trabajar, ya que este metodo autodetecta la base y por ejemplo parseInt("07") equivale a 7, pero parseInt("08") no equivale a 8 como se podria esperar sino que a 0, porque asume que es base octal.

ojo con esta linea:
atarox escribió:if((impar % 2) != 2) {
Ese condicional siempre evaluara como verdadero sin importar si el valor de "impar" es par o impar.
Avatar de Usuario
atarox
expert
expert
Mensajes: 1320
Registrado: Mar Nov 07, 2006 2:45 pm
Reputación: 0
Ubicación: stgo.
Contactar:

Re: programacion Javascript

Mensaje por atarox »

voy a tomar agua y vuelvo.. necesito arta pa votar arta baba!!!! por tu programa xt5

de todas maneras este tipo de programacion es avanzado wn. hermoso.!!! yo en tanto es mi primer semestre de programacion te daras cuenta en los nombres de las variables y el modo de colocar mis codigos. son como ultra ordenados como para saber que se hace. debo reconocer que tu nivel es abrumador.!!!

llegare a ese punto en algun momento . eso espero o eso quiero... ;)
Avatar de Usuario
renix
expert
expert
Mensajes: 2166
Registrado: Dom May 20, 2007 2:21 pm
Reputación: 0
Ubicación: La Serena, Chile
Contactar:

Re: programacion Javascript

Mensaje por renix »

Yo he visto otros códigos de Victor y debo decir ( sin animo de adular ni nada, porque es mi amigo ), que es de otro planeta este wn :-D

Cosas realmente avanzadas y marcianas de programación las aprendí de él...

Yo lo seguía desde años con sus desarrollos para ps2 sin saber quien era hasta que hicimos el match...
Responder