#19 Hice un pequeño código en C que calcula fracciones aproximadas a PI por si te interesa, así encontré el 355/13.
Hacía como 10 años que no programaba en C pero me pareció apropiado para esto.
Lo curioso es que el método que implementé es el mismo que describe en el artículo (no lo había leído cuando lo hice).
Puedes probarlo online aquí: www.onlinegdb.com/online_c_compiler
Puedes jugar con los valores de las constantes (MARGIN, MARGIN_PRINT o MAX_INT) para buscar números más precisos.
#9 No confundas el lenguaje C con la librería estándar de C, ya que malloc no es una palabra del lenguaje y para poder usarla tienes que hacer el #include<stdlib.h> en tu código C.
Pero ¿cómo se define una función en Java y en C?, y ¿un condicional? ¿Un bucle for, uno while y un until?... Entonces ¿Se parece o no la sintaxis de C y de Java?
#2"La belleza del código es tal, que los que lo amamos entendemos que un identado correcto, una complejidad algorítmica mínima, y una optimización máxima de los recursos, son tan bellos como la más bonita de las poesías. Y si has decodificado estos códigos para leer el artículo en lenguaje natural, te dejo uno de los que más alegría me hizo sentir a mí. #include <stdio.h>
int main() {
// Mi primer programa en Lenguaje C
printf("Hello, World!");
return 0;
}
En homenaje al Día de la Programación, que se celebró el 13 de septiembre (se celebra el 12 si es un año bisiesto) ya que es el día número 256 del año y, además, es el mayor número que se puede representar con 8 bits
Chema Alonso "
#213 vuelve a leer lo que he escrito, para a abstraer necesitas conocer el patrón a partir distintos ejemplos hasta que eres capaz de entender ciertas cosas sin necesitar otras.
Si tu eres capaz de abstraer una librería efectiva que multiplica matrices NxM es porque has trabajado con ambas, con librerias y porque has multiplicado matrices posiblemente en un cuaderno a mano y en algun momento lo habras programado con dos bucles for a modo de ejercicio... todo te sonará familiar y abstraes la idea de multiplicación de matrices. Pero porque has aplicado la multiplicación de matrices en diversos ambos, los suficientes como para que la puedas abstraer.
Si te digo, mira esta librería realiza un entrelazado optimo de nodos contextuales en perspectiva cibernética no-determinista. Y si nunca has… » ver todo el comentario
#158 Sí, lo de la incompatibilidad entre Python 2 y 3 es algo que puede liar bastante, aunque si lo piensas como que son dos lenguajes distintos (parecidos pero distintos) se suaviza mucho. En todo caso, lo lógico es que alguien que va a empezar a programar empiece siempre con la 3.
Pero ves, en tu ejemplo, ya estás mostrando claramente el porqué es más complejo C que Python.
1) Tienes que decirle al aprendiz que ignore para qué vale el #include (aunque bien es cierto que en Python cuando avances vas a tener que explicarle el import)
2) Le tienes que explicar qué es eso de "compilar"
3) Vas a tener que decirle que ignore el ampersand, porque como te metas a explicarle los punteros lo pierdes el primer día
4) Le tienes que explicar porque metes eso dentro de una función main()… » ver todo el comentario
#157: Y las incompatibilidades, que Python 2 y 3 no son compatibles.
¿Python para principiantes...? Yo creo que es mejor C, enseñado de forma simplificada, con Python también se puede plantear simplificado, olvidando tuplas, diccionarios y todo esa jungla, que estará bien para los avanzados, pero a un principiante lo pierdes.
En general la programación es mejor enseñarla con poquitas cosas, que intentar plantear "construye tu propio robot dialogante, reconoce caras y persigue pelotas azules desde el primer día", y luego hacer todo a base de copiar y pegar código que no se sabe lo que hace. Es mejor aprender el área de un cuadrado, aunque sea así.
float lado;
float area;
printf("Introduce el lado: ");
scanf(&lado);
area = lado * lado;
printf("El área es… » ver todo el comentario
#23Es mucho más seguro el control mediante excepciones aunque simplemente sea porque el compilador te OBLIGA a que hagas algo al respecto y no te permite dejar el resultado de la llamada "a lo que salga", como ocurre con los códigos de error.
====== test.cpp ==== #include <iostream> #include <fstream>
using namespace std;
int main () {
ofstream f("test.txt");
f << "Hello world!";
f.close();
return 0;
}
====== fin ==========
¿Cree usted que el compilador dirá algo sobre mi temeraria despreocupación por la gestión de errores?
#28 ha pasado que "concepts" y "modules" en vez de #include y volatile redefinido y las lambda han cambiado y muchas otras cosas destructivas.
Mi favorito es que funciones constexpr ahora pueden tener try/catch
#47 cierto, es malloc(sizeof(1)) y no malloc(1), me había fijado mal. Pero es que se me ha pasado también el import (#include), el studio.h (stdio.h), los paréntesis de main y el orden de los operandos en la llamada a gcc. Hoy es el día que los de Bankia me tratan de vender unas preferentes y se les quito todas de las manos...
Hacía como 10 años que no programaba en C pero me pareció apropiado para esto.
Lo curioso es que el método que implementé es el mismo que describe en el artículo (no lo había leído cuando lo hice).
Puedes probarlo online aquí:
www.onlinegdb.com/online_c_compiler
Puedes jugar con los valores de las constantes (MARGIN, MARGIN_PRINT o MAX_INT) para buscar números más precisos.
_____________________________________________
/******************************************************************************
Obtiene una fracción de enteros que devuelve un resultado aproximado a PI
**********************************************************************
… » ver todo el comentario