Foros del Web » Estrategias Digitales y Negocios Online » Negocios »

Competencia de Programación!

Estas en el tema de Competencia de Programación! en el foro de Negocios en Foros del Web. Estoy subscrito a un foro de programación en inglés http://www.coderforums.com y en el existe el tema de "Competencias", en la cual los usuarios envian retos ...
  #1 (permalink)  
Antiguo 25/09/2003, 14:54
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
Competencia de Programación!

Estoy subscrito a un foro de programación en inglés http://www.coderforums.com y en el existe el tema de "Competencias", en la cual los usuarios envian retos de programación a cumplir. Sería bueno, tener algo así aquí, puesto que no he encontrado nada parecido.

Como primer reto para comenzar!

Escribir el programa "Decimal a Binario" en todos los lenguages de programación que se puedan. Eso si, no vale repetir los lenguages. Y gana el que ponga más lenguajes distintos. Que gana???? Nada....solamente demostrar que es un buen programador. Espero que les guste la idea.....yo más tarde publicaré algunos cuantos lenguages para empezar!
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"
  #2 (permalink)  
Antiguo 25/09/2003, 15:35
 
Fecha de Ingreso: julio-2002
Mensajes: 322
Antigüedad: 21 años, 9 meses
Puntos: 0
no es mejor programador el que conoce mas lenguajes, sino al que le resulta indiferente un lenguaje q otro
__________________
Saludos

Rubén
Teléfonos móviles, curiosidades: http://telefonos-moviles.muchodenada.com/
  #3 (permalink)  
Antiguo 25/09/2003, 16:06
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
Tienes toda la razón!
Por eso creo que esta competencia es una muy buena opción, de paso que uno puede aprovechar para aprender nuevos lenguajes. Que dices, te animas a participar???
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"
  #4 (permalink)  
Antiguo 25/09/2003, 23:57
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
Aquí está el código en TURBO PASCAL:

Código:
PROGRAM dectobin;
USES crt;

VAR numero,suma,digito,exponente:LONGINT;
VAR respuesta:STRING;

BEGIN
       REPEAT
       CLRSCR;
       GOTOXY(1,4);
       WRITELN('Ingresa el numero decimal: ');
       READLN(numero);

       suma:=0;
       exponente:= 1;

       REPEAT
       digito:= numero MOD 2;
       numero:= numero DIV 2;
       suma:= suma + digito * exponente;
       exponente:= exponente * 10;
       UNTIL numero <= 0;

       WRITELN('El numero binario es: ');
       WRITELN(suma);
       WRITELN('Deseas continuar (s/n)?: ');
       READ(respuesta);
       suma:=0;
       UNTIL respuesta = 'n';
END.
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"

Última edición por Blag; 26/09/2003 a las 00:52
  #5 (permalink)  
Antiguo 26/09/2003, 00:33
Avatar de CsC_3  
Fecha de Ingreso: noviembre-2002
Mensajes: 589
Antigüedad: 21 años, 5 meses
Puntos: 0
blag, espero que no te tomes esto muy a pecho, pero "acostumbrate" a la indiferencia en estos foros.

ya son mas sosos que otra cosa...


c.ya
__________________
"No hay emoticon que describa lo que siento en estos momentos!!!"
  #6 (permalink)  
Antiguo 26/09/2003, 00:56
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
No hay problema....la indiferencia me da igual Yo solo quiero participar en la competencia aunque sea solo.....

Por lo tanto, acá está en Euphoria.....

Código:
include get.e

atom numero,digito,exponente,resultado,x,suma
sequence respuesta,auxiliar

x = 1
auxiliar = {115}

while x = 1  do
clear_screen()
    numero = prompt_number("Ingresa un numero decimal: ",{})
    suma = 0
    exponente = 1
    while numero > 0  do
	digito = remainder(numero,2)
	numero = floor(numero/2)
	suma = suma + digito * exponente
	exponente = exponente * 10
    end while
    puts(1,"El numero binario es: ")
    print(1,suma)
    respuesta = prompt_string("\nDeseas continuar (s/n)?: ")
    resultado = compare(respuesta,auxiliar)
    if resultado = 0 then
	x = 1
    else
	x = 0
    end if
end while
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"
  #7 (permalink)  
Antiguo 26/09/2003, 01:08
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
Ahora en C++

Código:
#include <iostream.h>
#include <conio.h>

long int numero,suma,digito,exponente;
char respuesta;

int main()
{
do{
clrscr();
cout<<"Ingresa un numero decimal: ";
cin>>numero;
suma = 0;
exponente = 1;
	do{
	digito = numero % 2;
	numero = numero / 2;
	suma = suma + digito * exponente;
	exponente = exponente * 10;
	}while (numero > 0);
cout<<"El numero binario es: "<<suma;
cout<<"\nDeseas continuar (s/n)";
cin>>respuesta;
suma = 0;
}while(respuesta == 's' || respuesta == 'S');
}
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"
  #8 (permalink)  
Antiguo 26/09/2003, 08:35
 
Fecha de Ingreso: julio-2002
Mensajes: 322
Antigüedad: 21 años, 9 meses
Puntos: 0
__________________
Saludos

Rubén
Teléfonos móviles, curiosidades: http://telefonos-moviles.muchodenada.com/
  #9 (permalink)  
Antiguo 26/09/2003, 09:17
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
Muchas gracias Ruben_adap:

Espero que puedas participar en la competencia, porque quedan muchisimos lenguajes de programacián más, porque obviamente no los conozco todos.....nos faltan por lo menos Java, Ruby, JSP, PHP, VBScript, VBA, Huskell, ASM, Phyton, QBasic, JavaScript, O'calm, Cobol, Fortran, ADA, etc......Osea que si conoces alguno de estos programas, ayudame contribuyendo

No creo que tenga mucha gracias una competencia, en la que solamente participo yo
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"
  #10 (permalink)  
Antiguo 26/09/2003, 13:40
 
Fecha de Ingreso: julio-2002
Mensajes: 322
Antigüedad: 21 años, 9 meses
Puntos: 0
seguro que ganas!!!!
__________________
Saludos

Rubén
Teléfonos móviles, curiosidades: http://telefonos-moviles.muchodenada.com/
  #11 (permalink)  
Antiguo 26/09/2003, 16:08
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

El que va a ganar soy yo. Aqui va mi solucion en PSEUDOCODIGO:

Obtenemos el numero decimal
Inicializamos dividendo con el numero decimal
Inicializamos salida a cadena vacia
Mientras dividendo > 1
- concatenamos salida con dividendo modulo 2
- actualizamos dividendo a dividendo division_entera 2
Fin bucle
Mostramos salida en orden inverso

Y ya esta, valido para cualquier lenguaje.

Personalmente, no le veo ninguna gracia a este "reto". Es un algoritmo sencillo, hay lenguajes que tienen ya una funcion dec2bin() en sus librerias, y total, lenguajes hay a patadas, y sacaran nuevos, pero el algoritmo basico permanecera, solo sera cuestion de traducirlo.

Yo prefieros retos estilo los consursos de www.codewalkers.com o www.php-editors.com , que ademas ser mas creativos, motivan con premios apetecibles.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #12 (permalink)  
Antiguo 26/09/2003, 19:40
 
Fecha de Ingreso: agosto-2003
Mensajes: 272
Antigüedad: 20 años, 8 meses
Puntos: 0
Jaja....
Para mi es una competencia aburrida.
Que les parece si la cambiamos por esta otra.
Diseñar un programa estilo gerrero que ataque a los demas y los intente matar.
Se que el juego existe por que lo he visto en mi facultad...
Si les interesa intento conseguir las bases del tema.
Saludos
  #13 (permalink)  
Antiguo 27/09/2003, 01:37
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
Aquí está en QBASIC

Código:
DIM numero&, suma&, digito&, exponente&, respuesta$
     
DO WHILE NOT respuesta$ = CHR$(110)
CLS
INPUT "Ingresa un numero decimal: ", numero&
LET suma& = 0
LET exponente& = 1
DO UNTIL numero& <= 0
digito& = numero& MOD 2
IF NOT numero& MOD 2 = 0 THEN
numero& = numero& - 1
END IF
numero& = numero& / 2
suma& = suma& + digito& * exponente&
exponente& = exponente& * 10
LOOP
PRINT "El numero binario es: ", suma&
PRINT
INPUT "Deseas continuar (s/n)?: ", respuesta$
LOOP
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"
  #14 (permalink)  
Antiguo 27/09/2003, 01:44
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
El único premio para un verdadero programador, es la satisfacción de haber hecho su programa.

Lo demás es superficial. Puesto que para un verdadero programador, no hay reto sencillo ni aburrido.......cada problema por insignificante que pueda ser, es un paso más hacia la perfección.

Un verdadero programador, no ataca, critica objetivamente y propone soluciones.

Gracias.

Todavía me faltan más lenguajes para subir.
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"
  #15 (permalink)  
Antiguo 27/09/2003, 07:17
 
Fecha de Ingreso: julio-2002
Mensajes: 322
Antigüedad: 21 años, 9 meses
Puntos: 0
Blag eres un poco pesado :-p

Josemi claro ganador del reto
__________________
Saludos

Rubén
Teléfonos móviles, curiosidades: http://telefonos-moviles.muchodenada.com/
  #16 (permalink)  
Antiguo 27/09/2003, 08:21
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
Ahora en PHP

Código:
<?
$suma=0;$digito=0;$exponente=0;$respuesta=0;
if(isset($numero))
{
$suma = 0;
$exponente = 1;
do
{
$digito = $numero % 2;
$numero = floor($numero / 2);
$suma = $suma + $digito * $exponente;
$exponente = $exponente * 10;
}while($numero > 0);
echo "El numero binario es: $suma";
}
?>

<html>
<head><title>Prueba</title></head>
<body>
<form action="<?php print $PHP_SELF?>" method="post">
    Ingrese un número decimal: <input type="text" name="numero"><br>
    <input type="submit" value="Evaluar">
</form>
</body>
</html>
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"
  #17 (permalink)  
Antiguo 27/09/2003, 11:30
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
Ahora en JavaScript:

Código:
<html>
<head>
<script language="JavaScript">
function DecToBin()
{
var numero,suma,digito,exponente;

numero = FormX.txtValue.value;
suma = 0;
exponente = 1;

do
{
digito = numero % 2;
numero = Math.floor(numero / 2);
suma = suma + digito * exponente;
exponente = exponente * 10;
}while(numero > 0);

document.write("El numero binario es: " + suma);

}
</script>
</head>
<body>
<form name="FormX">
Ingresa un numero decimal 
<input type="text" name="txtValue">
<input type="button" value="Enviar" onClick="DecToBin()" >
</form>
</body>
</html>
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"
  #18 (permalink)  
Antiguo 03/10/2003, 12:22
Avatar de cvander
Moderador
 
Fecha de Ingreso: abril-2001
Ubicación: Ciudadano del mundo
Mensajes: 13.638
Antigüedad: 23 años
Puntos: 1792
Esto podría interesarles:

http://www.forosdelweb.com/s/msg156652.html
__________________
- Christian Van Der Henst
Platzi
  #19 (permalink)  
Antiguo 16/10/2003, 20:17
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
Ya me estaba olvidando de Java :

Código:
import java.awt.event.*;
import java.awt.*;
import java.applet.*;

public class DecToBin extends Applet implements ActionListener{

	TextField txtNumero;
	Button btnEjecutar;
	TextArea txtResultado;
	
	public void init() 
	{	
	setLayout(null);
	
	txtNumero=new TextField("");
	txtNumero.setBounds(20,20,80,20);
	add(txtNumero);
	
	btnEjecutar=new Button("Presioname!");
	btnEjecutar.addActionListener(this);
	btnEjecutar.setBounds(120,20,80,20);
	add(btnEjecutar);
	
	txtResultado=new TextArea("");
	txtResultado.setBounds(20,50,200,60);
	add(txtResultado);
	
	}

	public void actionPerformed( ActionEvent e )
	{
	long numero,suma,digito,exponente;
			
	if(e.getSource().equals(btnEjecutar))
	{
	numero = Long.parseLong(txtNumero.getText());
	suma = 0;
	exponente = 1;
	
	do{
	digito = numero % 2;
	numero = numero / 2;
	suma = suma + digito * exponente;
	exponente = exponente * 10;
	}while (numero > 0);
	
	txtResultado.setText("La respuesta es: " + suma);
	}
	}
}
Esta es la versión corregida......Gracias a Josemi por su ayuda.
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"

Última edición por Blag; 21/10/2003 a las 14:25
  #20 (permalink)  
Antiguo 17/10/2003, 01:49
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Impugno la ultima solucion por mostrar malas costumbres de programacion.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #21 (permalink)  
Antiguo 18/10/2003, 01:24
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
Bueno Josemi, una crítica sin fundamentos no es más que una muestra de poco profesionalismo.....Si te parece que he utilizado malas costumbres de programación, pues menciona al menos cuales son......y supongo que no te referirás a las variables globales, no? Porque para un ejemplo tan simple, dá realmente lo mismo que sean globales o privadas, y eso cualquier programador lo sabe. O acaso piensas que utilizo muy pocas variables.....talvés se te hace más dificil entender el código así.......
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"
  #22 (permalink)  
Antiguo 18/10/2003, 14:22
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Bueno, solo comentar que se me paso poner un par de smiles al final de mi anterior mensaje.

Y claramente me referia a esas variables globales y publicas. Incluso declarar variables que no usas. Seria como para suspender tu codigo (o ponerle un 5 raspado).

Tambien me pregunto si java no tiene una funcion que lo haga automagicamente.

Saludos.

PD: Y para codigo que no puedo entender, me sobra con el mio propio.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #23 (permalink)  
Antiguo 18/10/2003, 14:46
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
Oooppsss, creo que te debo una disculpa Josemi

No me había dado cuenta de las variables extras..... .....lo que pasa es tome mi código de C++ como base para codificarlo en Java.....y como se me olvidaron algunas.....

La verdad no se si Java tenga una función propia de Decimal a Binario......pero de ser así, entonces donde queda la diversión del programador????
Para mi, ser programador, siginifica hacer todo uno mismo.....bueno, con algunos límites (No voy a hacer mi propia librería OpenGL, por más programador que crea que soy...... ).
Pero pienso que es bueno hacer tus propias rutinas de programas sencillos, para poder practicar y aprender más.

Te agradezco mucho por haber notado esos errores, así me ayudas a ser un mejor programador! Gracias!!!
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"
  #24 (permalink)  
Antiguo 21/10/2003, 14:27
Avatar de Blag  
Fecha de Ingreso: septiembre-2003
Ubicación: Lima
Mensajes: 68
Antigüedad: 20 años, 7 meses
Puntos: 0
Ahora en D++ :

Código:
newvar numero,suma,digito,exponente,respuesta,aux,bye;

screenput "Ingresa un numero decimal: ";
screenin numero;

suma = 0;
exponente = 1;

do while numero >= 1;
digito = numero % 2;
numero = int(numero / 2);
aux = digito * exponente;
suma = suma + aux;
exponente = exponente * 10;
loop

screen;
screenput "El numero binario es: ";
screenput suma;
__________________
Alvaro Tejada Galindo
Consultor ABAP FI/HR
SinglePath's Experimental HomePage
Foro de ABAP en SoloCodigo.com
Revista "Código Latino"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 16:59.