Curso completo de programación con lenguaje C

Leos

#330 Arreglado, no había caído, he copiado tal cual el enunciado sin fijarme en eso xD

chouji

#330 Lo peor es que está escrito como el puto culo xD Como eso lo haya escrito un profesor, es de vergüenza.
Dice:

Hacer un programa en C que vaya leyendo números hasta que se introduzca un número negativo. En ese momento, el programa mostrará la suma de todos los nombres positivos. Hazlo con un bucle while.

El código creo que se entiende bastante bien.

1 1 respuesta
Leos

#332 Lo ha escrito la profesora, no se si es valenciano o un catalán que se ha inventado ella sólita xD

2 1 respuesta
gonya707

#333 puesto que al menos un numero vas a tener que meter, lo suyo seria que usases un bucle do while.

por cierto usa las etiquetas

 porque sino no es problema ni de catalan ni de valenciano ni de español xDDDDD Estamos muy mal acostumbrados al systax highlight creo yo
1 respuesta
actionchip

#329 Se poquisimo de esto asi que no me hagas mucho caso xD.

No te faltaria por ahí un "else"?

1 respuesta
Leos

#335 No un else no, porque no quiero que si no es positivo me haga otra cosa, no se si me explico.

#334 en el siguiente tengo que hacerlo con un do while jajajaja
Etiquetas

 que es eso?
1 respuesta
gonya707

#336 pon tu codigo de C entre [code] y [/code] (sin los asteriscos) para que se enmarque el codigo

1
Leos

Por fin lo he conseguido, lo pongo que me hace ilu y por si veis que se puede mejorar algo.

#include <stdio.h>
#include <stdlib.h>

int main(void){

int num, suma=0;

printf("Introdueix un nombre: \n"); scanf("%d", &num);
suma+=num;
while(num>0){
             printf("Introdueix un nombre: \n"); scanf("%d", &num);
             if (num>0)suma+=num;}
printf("La suma dels nombres positius es: %d\n", suma);



system("pause");
return 0;
}
1 1 respuesta
gonya707

#338 funciona bien, aunque yo mejoraría ese estilo de tabulado xD

Las llaves ponlas o asi:

if(){
  linea;
  linea;
}

o asi:

if()
{
  linea;
  linea;
}

No pongas en la misma linea el if y el suma+=num;, queda feisimo, tambien lo mismo para las otras lineas con varias instrucciones... y luego tabula bien todo. Programas como el sublime text te tabulan todo bien dando a un boton. Un buen tabulado sería así:

tambien pon espaciado entre los operadores, el =, etc, facilita muchisimo la lectura

1
Leos

Si soy yo otra vez xD EStaba haciendo un juego de adivinar un numero y no se porque en el menu cuando elijo la opcion dos que es salir me sigue haciendo el mismo bucle, quizas es un error muy tonto pero llevo ya un rato mirandolo y cambiando cosas y no me sale.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main(void){

int num, num_random, opcio, c=0;

printf(".................Encerta el nombre.................\n");

do{
    printf("\n1) Start\n");
    printf("2) Exit\n");
    printf("Introdueix una opcio\n"); scanf("%d", &opcio);


    srand(time(0));
    num_random= rand() % 10+1;
    do{
        c++;
        printf("Introdueix un nombre del 0 al 10: \n"); scanf("%d", &num);
        if(num_random > num) printf("El nombre introduit es mes petit\n");
        else if(num_random < num) printf("El nombre introduit es mes gran\n");
        else printf("Has encertat!!!\n");
    }while(num!=num_random);

	printf("Ho has intentat %d vegades\n", c);
}while(opcio==1);

while(opcio==2){ printf("El programa a finalitzat");
}
while(opcio!=1 && opcio!=2){ printf("ERROR!!!!");
}
	return 0;

}
1 respuesta
gonya707

#340 esa manera de hacer un menu me parece terriblemente mala xD

do{
  //print menu
  //scan opcion

  //switch opcion
      //case 1
           //bucle de juego
      //case default
          //mensaje de error
   //end switch

}while(opcion!=2);

no tendria mas sentido asi? si la opcion es 1 entra al juego, si opcion es 2 se sale del programa, y si es otra cosa da ese mensaje de error

1 respuesta
Leos

#341 No me sale, se me lían las llaves y no se me cierran con lo que quiero, no controlo mucho el switch.

Escribo el menú como he puesto antes con el do no? entonces después del menú empiezo con el switch? pero entonces que hago con el do y el while de dentro?

25 días después
VladPo

Este curso de c me puede valer tambien para c++??

2 respuestas
KeTo

#343 Para la parte menos orientada a objetos de C++ sí, luego aparte tendrías que aprender lo otro.

gonya707

#343 per se no te sirve. Pero C++ contiene C, asi que

Si no sabes nada de C/C++, si, empieza por aqui.

Si ya sabes C y quieres saber C++, te recomiendo que eches un ojo al apéndice B de este pdf(pagina 144), que explica a grandes rasgos el salto de C a C++

1 respuesta
VladPo

#345 Muchas gracias le echare un ojo al PDF parece bastante completo#344

15 días después
M

Qué recuerdos, qué sencillote es C pero qué útil a veces. Es el lenguaje iniciación total.

¡Muy buen tuto!

1 respuesta
Trolli

#347 Pues yo con concurrente no lo veo tan sencillo la verdad... :(

Fyn4r

C
sencillote

LOL

M

Bueno, no sé cuánto tiempo lleváis con esto, pero con el paso del tiempo, cuando coges experiencia con otros lenguajes, C lo ves de otra manera. Está claro que como todos los lenguajes tienen su miga, pero los hay más difíciles, eso seguro :)

Fyn4r

Hombre si programas en fortran igual xd

Saiko9

C sencillote xdddd joder como no puedes hacer cosas con bajo nivel tocando mierdas e incluso meta programación o programación paralalela.

HeXaN

La verdad es que una vez que aprendes JAVA, todo va rodado.

Trolli

Java para mí es mucho más fácil que C... o.O
Una cosa es programación estructural u orientada a objetos, y la otra programación concurrente, donde Java no pinta nada...

2 respuestas
HeXaN

#354 Era una bromica xD Que por cierto, JAVA también soporta programación concurrente.

1 respuesta
Trolli

#355 Ah joder, es que soy nuevo en el foro y aún no pillo todas las ironías jajaj

B

#354 en java puedes hacer concurrente

Clinisvud

¿Qué proyectos o ejercicios recomendáis para practicar con C?

Zero_G

Acabo de descubrir este thread y oye #1 cuando quieras quedamos y te beso el aparato genital que gastes ;) :qq:

1 respuesta
gonya707

#359 uuh, creo que declino educadamente la oferta :P