Article View: es.comp.lenguajes
Article #113Re: Muy importante
From: Jose Luis Trivino
Date: Mon, 19 Jul 1999 00:00
Date: Mon, 19 Jul 1999 00:00
74 lines
4921 bytes
4921 bytes
trovador wrote: > > En todo, las generalizaciones son erroneas y este es un ejemplo de ello. > Pueden existir autodidactas muy buenos pero decir que "todos los > autodidactas" son mejores programadores que los que han cursado tres o > cinco anos de carrera me parece un comentario gratuito. Sin entrar en discusi�n sobre quien es mejor o peor programador o si es necesario un colegio oficial, creo que puedo contar una peque�a "anecdota" que puede resultar interesante. El caso es que hace tiempo, mientras discut�a sobre como saber si una persona es un buen programador o no, uno de mis compa�eros de trabajo me sugir�o la siguiente prueba: Un buen programador es una persona que hace buenos algoritmos (si eliminamos la tarea de dise�o del interface de usuario que se podr�a considerar m�s una tarea de psicolog�a y de dise�o gr�fico). Adem�s, un buen programador debe ser capaz de programar en cualquier lenguaje una vez conocida su sintaxis y su sem�ntica (un algoritmo es un algoritmo independiente del lenguaje con el que se programe). Basandonos en esto llegamos a la conclusi�n de que una buena prueba para saber la capacidad de un programador era plantearle un problema sencillo (para evitar que se pierda en la dificultad del problema) en un lenguaje nuevo para el pero tan sencillo que no requiriese aprendizaje (para evitar que se perdiese en los entresijos del lenguaje). De esta forma solo demostrar�a su capacidad para crear algoritmo y expresarlos en un lenguaje de programaci�n. Tras darles algunas vueltas, alguien sugiri� el siguiente problema (de cuyo origen no voy a comentar nada): Realizar un programa en el lenguaje SIMPLON que calcule el resto y el cociente de la divisi�n entera de un n�mero pasado por par�metro por una constante C (por ejemplo 5). El lenguaje SIMPLON es tan simple como sigue (aqui muestro su sintaxis y sem�ntica completa): A := B // Copia el valor de B en A A := B+1 // Copia el valor de B en A y le suma 1 A := B-1 // Copia el valor de B en A y le resta 1 REPETIR N VECES <sentencias> FIN REPETIR // Repite <sentencias> N veces. N puede ser una variable o una constante. Si N es una variable su modificaci�n dentro del cuerpo del bucle no afecta al n�mero de iteraciones (estas quedan fijadas al comienzo del bucle). LEER A // Lee por terminal un numero y lo almacena en la variable A ESCRIBIR A // Escribe el valor de A en el terminal Como veis, el lenguaje no puede ser m�s sencillo. Ahora bien, quien se atreve a dar la soluci�n al problema en este lenguaje? A mi me costo un par de horas encontrarla. Si alguno (titulado o no) cree haber encontrado la soluci�n lo invito a que la postee en estas news y ya veremos. Supongo que si habeis leido este mensaje hasta aqui ya tendreis algo de curiosidad por saber quien solucion� mejor este problema, pero eso lo guardo para cuando alguien encuentre la soluci�n. Asi podr� crear un poco m�s de polemica. Animo y a demostrar quien es el mejor programador. Hasta mas bits, -- --------------------------------------------------- Jose Luis Triviño Rodriguez Despacho 2.2.B.15 Tlf.: (95) 2133316 http://www.lcc.uma.es/personal/trivino/trivino.html Usuario registrado de linux n� 53043 --------------------------------------------------- La medida de programar es programar sin medida
Technical Details
Message-ID:
<3792E452.5FC9ABE2@lcc.uma.es>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<7midgc$13n@telerad.teleline.es> <7mj1oq$7jb@telerad.teleline.es> <378DCE0C.1433597D@interactivebureau.com> <Pine.LNX.4.10.9907160956530.3269-100000@golum.inforg.uniovi.es>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: 1053fc,7f2767b4c9fc7a53 X-Google-Attributes: gid1053fc,public X-Google-Thread: 10f58f,7f2767b4c9fc7a53 X-Google-Attributes: gid10f58f,public X-Google-Thread: 1116f3,7f2767b4c9fc7a53 X-Google-Attributes: gid1116f3,public X-Google-Thread: f53ec,7f2767b4c9fc7a53 X-Google-Attributes: gidf53ec,public X-Google-Thread: f59de,7f2767b4c9fc7a53 X-Google-Attributes: gidf59de,public X-Google-Thread: 105378,7f2767b4c9fc7a53 X-Google-Attributes: gid105378,public X-Google-Thread: f877f,7f2767b4c9fc7a53 X-Google-Attributes: gidf877f,public From: Jose Luis Trivino <trivino@lcc.uma.es> Subject: Re: Muy importante Date: 1999/07/19 Message-ID: <3792E452.5FC9ABE2@lcc.uma.es> X-Deja-AN: 502661348 Content-Transfer-Encoding: 8bit References: <7midgc$13n@telerad.teleline.es> <7mj1oq$7jb@telerad.teleline.es> <378DCE0C.1433597D@interactivebureau.com> <Pine.LNX.4.10.9907160956530.3269-100000@golum.inforg.uniovi.es> X-Accept-Language: en Content-Type: text/plain; charset=iso-8859-1 X-Complaints-To: news@cica.es X-Trace: mercurio.cica.es 932373727 2261 150.214.108.40 (19 Jul 1999 08:42:07 GMT) Organization: Dept. Lenguajes y Ciencias de la Computacion Mime-Version: 1.0 NNTP-Posting-Date: 19 Jul 1999 08:42:07 GMT Newsgroups: es.comp.lenguajes,es.comp.lenguajes.c,es.comp.lenguajes.c++,es.comp.lenguajes.java,es.comp.lenguajes.misc,es.comp.lenguajes.tex,es.comp.lenguajes.visual-basic