|
Mostrar Mensajes
|
Páginas: 1 2 [3]
|
21
|
Programación / Programación C/C++ / Re: Ayuda por favor ejercicio reloj do/while C
|
en: 22 Noviembre 2016, 23:34 pm
|
Ahi esta, creo que esta bien, gracias de nuevo. #include<stdio.h> void main(){ int centiseg,seg,min,hr,dia,mes,ano; seg=0; min=0; hr=0; dia=1; centiseg=0; mes=1; ano=1900; do{ centiseg++; if(centiseg>=100){seg++;centiseg=0;} if(seg>=60){min++; seg=0;} if(min>=60){hr++;min=0;} if(hr>=24){dia++;hr=0;} if(dia>=32&&mes==1){mes++;dia=0;} if(dia>=29&&mes==2){mes++;dia=0;} if(dia>=32&&mes==3){mes++;dia=0;} if(dia>=31&&mes==4){mes++;dia=0;} if(dia>=32&&mes==5){mes++;dia=0;} if(dia>=31&&mes==6){mes++;dia=0;} if(dia>=32&&mes==7){mes++;dia=0;} if(dia>=31&&mes==8){mes++;dia=0;} if(dia>=31&&mes==9){mes++;dia=0;} if(dia>=32&&mes==10){mes++;dia=0;} if(dia>=31&&mes==11){mes++;dia=0;} if(dia>=32&&mes==12){ano++;mes=1;dia=0;} switch(dia){ case 1:printf("Martes");break ; case 2:printf("Martes");break ; case 3:printf("Miercoles");break ; case 4:printf("Jueves");break ; case 5:printf("Viernes");break ; case 6:printf("Sabado");break ; case 7:printf("Domingo");break ;} switch(mes){ case 2:printf("Febrero");break ; case 8:printf("Agosto");break ; case 9:printf("Septiembre");break ; case 10:printf("Octubre");break ; case 11:printf("Noviembre");break ; case 12:printf("Dicienbre");break ;} printf("%d:%d:%d:%d\n",hr ,min ,seg ,centiseg ); }while(ano<2000);//por ejemplo }//void
|
|
|
22
|
Programación / Programación C/C++ / Re: Ayuda por favor ejercicio reloj do/while C
|
en: 22 Noviembre 2016, 20:46 pm
|
Ya, pero tengo que seguir, me faltan muchos ejercicios por hacer todavia. ¿Veis algun error? Si dejo el programa corriendo para ver si llega al dia 8 voy a tener que sacar un extintor. Realizar un reloj que muestre el siguiente formato por pantalla: Viernes 30 de Octubre de 1998. 14:25:15,58 #include<stdio.h> void main(){ int centiseg,seg,min,hr,dia,sem,mes,ano; seg=0; min=0; hr=0; dia=1; centiseg=0; sem=1; mes=1; ano=1900; do{ centiseg++; if(centiseg>=100){seg++;centiseg=0;} if(seg>=60){min++; seg=0;} if(min>=60){hr++;min=0;} if(hr>=24){dia++;hr=0;} if(dia>=8){sem++;} if(sem>=5){mes++;dia=1;} if(mes>=13){ano++;mes=1;} else if(dia ==2){printf("Martes");} else if(dia ==3){printf("Miercoles");} else if(dia ==4){printf("Jueves");} else if(dia ==5){printf("Viernes");} else if(dia ==6){printf("Sabado");} else if(dia ==7){printf("Domingo");} else if(mes ==2){printf("Febrero");} else if(mes ==3){printf("Marzo");} else if(mes ==4){printf("Abril");} else if(mes ==5){printf("Mayo");} else if(mes ==6){printf("Junio");} else if(mes ==7){printf("Julio");} else if(mes ==8){printf("Agosto");} else if(mes ==9){printf("Septiembre");} else if(mes ==10){printf("Octubre");} else if(mes ==11){printf("Noviembre");} else if(mes ==12){printf("Dicienbre");} printf("%d:%d:%d,%d\n",hr ,min ,seg ,centiseg ); }while(ano<2000);//por ejemplo }//void
|
|
|
23
|
Programación / Programación C/C++ / Re: Ayuda por favor ejercicio reloj do/while C
|
en: 22 Noviembre 2016, 19:27 pm
|
Muchas gracias! ya funciona perfectamente, el reloj retrasa una hora en el dia 283 que creo que es lo que pedia el ejecicio, en lugar de retrasarla cada 283 dias que es lo que pretendia aunque estuviera mal... (Al final he puesto la libreria conio.h porque me da error con putchar(); en turbo c) #include<stdio.h> #include<conio.h> void main(){ int seg,min,hr,dia,cont; seg=0; min=0; hr=0; dia=1; cont=0; do{ seg++; if(seg>=60){min++; seg=0;} if(min>=60){hr++;min=0;} if(hr>=24){dia++;hr=0;} if(dia==283&&cont==0){cont++;dia=282;hr=23;} printf("\ndia %d %d:%d:%d",dia ,hr ,min ,seg ); }while(dia<283); }//void
|
|
|
25
|
Programación / Programación C/C++ / Re: Ayuda por favor ejercicio reloj do/while C
|
en: 22 Noviembre 2016, 14:29 pm
|
En primer lugar gracias a todos por vuestros comentarios. No se porque pero solo suma las horas y los dias, he probado sin el if (seg!=60), pero es lo mismo... MAFUS al final de esa instrucción seg vale 1 y pensaba que deberia seguir sumando 1 hasta meterse en el if que sumaria un minuto y reiniciaria seg. Kenji-chan he cambiado el codigo pero no se que mas hace falta.... #include<stdio.h> void main(){ int seg,min,hr,dia; seg=0; min=0; hr=0; dia=1; do{ if (seg!=60){seg++;} if(seg>=60){min++; seg=0;} if(min>=60){hr++;min=0;} if(dia%283==0&&dia!=1&&hr>=24){dia++;hr=-1;} if(hr>=24){dia++;hr=0;} printf("\ndia %d %d:d%:%d",dia ,hr ,min ,seg ); }while(dia<285); }//void
|
|
|
26
|
Programación / Programación C/C++ / Re: Ayuda por favor ejercicio reloj do/while C
|
en: 21 Noviembre 2016, 17:47 pm
|
Parece que no funciona ni e contador de segundos y no entiendo porque... el otro dia hice un programa de numeros primos que se parece bastante y funcionaba correctamente. #include<stdio.h> #include<conio.h> void main(){ //NUMEROS PRIMOS int num,divisor; num=5; divisor=3; while(1000>num){ if(num%divisor!=0){divisor=divisor+2; }//if else{divisor=3; num=num+2;}//else if(num==divisor){ divisor=3; num=num+2; }//if2 }//while }//void
|
|
|
27
|
Programación / Programación C/C++ / Ayuda por favor ejercicio reloj do/while C
|
en: 21 Noviembre 2016, 15:44 pm
|
6. Realizar un reloj que se retrase una hora automáticamente el tercer día de la semana 40 Por que no funciona? #include<stdio.h> #include<conio.h> void main(){ int seg,min,hr,dia; seg=0; min=0; hr=0; dia=1; do{ seg=seg++; if(seg==59){min=min++; seg=0;} if(min==59&&seg==59){hr=hr++;min=0;seg=0;} if(hr==23&&min==59&&seg==59){dia=dia++;hr=0;min=0;seg=0;} if(dia==282&&hr==23&&min==59&&seg==59){dia=dia++;hr=-1;min=0;seg=0;} printf("\ndia %d %d:d%:%d",dia ,hr ,min ,seg ); }while(dia<283); }//void
MOD: Etiqueta GeSHi.
|
|
|
|
|
|
|