Ayuda programa C

Rtg

Uso el programa Turbo C i necesito ayuda:
este es el prgrama k he de hacer

Haz un programa k determine si un año es de traspaso.
Un año es de traspaso kuando es multiple de 4. Pero los años multiples de 100 no lo son de 400 a la vez no es de traspaso (P.EJ: 1800 no es de traspaso pero 2000si)

Lo he de hacer kn if i else

Venga haber is alguien k sepa programar me hecha una mano en esto

Salu2

Z3R0KULL

Otia yo tengo que acer uno parecido a ese pa esta tarde, pero tiene que ver con los años bisiestos...ahora cuando lo aga, si nadie te a ayudado te lo paso por si te sirve^^

_dekan_

primero q este post tiene q tar en desarrollo. segundo, para saber si un numero es multiplo de otro haz (n1%n2 == 0) la verdad es q no entendi muy bien d q numeros tiene q ser multiplo, pero si lo tiene q ser de 4 pero no de 100 haz algo como
if (n%4 == 0 && n%100 != 0) // lo es
else // no lo es

maRc

¿Quieres que te hagamos los deberes? :P

Como te han dicho, tienes que hacer unas comprobaciones. Te lo pongo en pseudocódigo para que hagas algo por tu cuenta (el - indica que está anidado).

SI año%4==0
-SI año%100!=0
--es de traspaso (más conodido como bisiesto)
-O
---SI año%400==0
----es de traspaso
---O
----no es de traspaso
O
-no es de traspaso

Ale, a currar.

litri

#1

No me jodas que vas a la UPF? Ese fue el segundo ejercicio de la primera practica de la carrera superior de informatica de la UPF.
Toma ....

#include <stdio.h>


main
{
int any;

printf( "ANYS DE TRASPAS\n" );

printf( "Introdueix un any: " );
scanf( "%d", &any );

if ( any % 4 == 0 )
{
    if ( any % 100 == 0 && any % 400 != 0 )
        printf( "%d no es un any de traspas.\n", any );
    else
        printf( "%d es un any de traspas.\n", any );
}
else
{
    printf( "%d no es un any de traspas.\n", any );
}

}[/i]

De nada :D !

PD: Aprovecho por si alguien me da alguna idea para mi practica (no me sale :(). El anunciado es este...

"Hacer un programa que despues de pedir al usuario que introduzca una cadena de 10 caracteres, busca si la cadena contiene algun palindromo de al menos 6 letras. Vuestro programa ha de decir cual es el palindromo mas largo que encuentra (siempre que sea de al menos 6 letras) y asi como su longitud y en que posición comienza y acaba (las posiciones empiezan por 0).

Ejemplo: Con la cadena abcddcbaxy
El programa ha de decir que ha encontrado el palindromo abcddcba de longitud 8 que comienza en la posición 0 i acaba en la 7"

Cualquier ayuda será bien recibida :P.

Rtg

Osita k rapido

1º muchas gracias a tos

eske la profe no nos keria decir k es lo k nos faltava k me parece k es ese % ahi suelto k no se k keire decir

k va yo toy en 1º de bachilerato xD i es un variable

Enga gente k kuando lo vean los de mi klase se ekdaran flipaos xD

Muchas gracias y un saludo

LiuM

Enfin ahora poniendo los deberes...una cosa son dudas y otra no mirar nada mientras te lo hacen...caradura

Ni sikiera pones lo que no entiendes..pero peor es la gente q te lo pone xD

maRc

% = módulo, el resto de la división entera.

Litri, ese se puede hacer con bucles anidados. Currate tu el resto ;).

Xtigma

El del palindromo le hice el año pasado pero la idea era algo asi
j=strlen(cadena)
For i=0;strlen(cadena)/2+1;i++
if cadena(i)==cadena(j)
palindromo=1
j--
else
palindromo=0
i=strlen(cadena)/2+2

return palindromo

/*0 no palindromo
1 palindromo */

Sorry pero ahora no tengo muchas ganas de pensarlo

Rtg

maRc no son debers es un trabajo de klase no nos ponen deberes nunka de prgramacion

Nos dijo buskar la manera vosotors donde kerais i el post lo puse desde la klase kn ella delante xD

Salu2

AvariciA

Xtigma no se q sentido encuentras a lo q has escrito ¬¬

Villa Olimpica are different :P

maRc

Deberes y trabajo de clase creo que son casi sinónimos ;)

Tampoco pasa nada, el caso es que estamos para ayudar y así lo hemos hecho :)

LOc0

ME ha entrado morriña de C, y además me ha servido para des-oxidarme ;) Espero que te sirva...

#include <stdio.h>
#include <string.h>
#include <conio.h>

int palindromo(char[]);

void main()
{
char palabra[11];


char recorte[11];
int i, longitud, pal, j;

do{
system("cls");
printf("\n\t\t\tPALINDROMEITOR");
printf("\n\n\t\t\nIntroduce una cadena de 10 caracteres\n\n-->\t");

gets(palabra);

}while(strlen(palabra)!=10);

printf("\n\n\t");

//Comprobamos si TODO es un palíndromo
if(palindromo(palabra)==0)
printf("\n\tTODA la cadena es un palíndromo");

else
{
//Comprobamos todas las posibilidades de 8 caracteres que son 3
j=0;


    while(j<3 && palindromo(recorte)!=0)
           {
                for(i=0; i<8; i++)
                    recorte[i]=palabra[i+j];
                    
                    recorte[i]='\0';
                    
           j++;
           }
           
        
           if(palindromo(recorte)==0)
           printf("\nHay un palíndromo de 8 caracteres [%s] que empieza en %d y termina en %d", recorte, j-1, j-2+i);
           
           else
           {
           
    //Comprobamos todas las posibilidades de 6 caracteres que son 5
           j=0;
    
    while(j<5 && palindromo(recorte)!=0)
           {
                for(i=0; i<6; i++)
                    recorte[i]=palabra[i+j];
                    
                    recorte[i]='\0';
           j++;
           }
           
           if(palindromo(recorte)==0)
           printf("\nHay un palíndromo de 6 caracteres [%s] que empieza en %d y termina en %d", recorte, j-1, j+i-2);
           
           else
           printf("\n\tNO HAY NINGUN PALINDROMO DE AL MENOS 6 CARACTERES :(");
           
           }


}




printf("\n\n\n\t\tPulsa una tecla para salir");
getch();

}

int palindromo(char recorte[])
{
int i, longitud=strlen(recorte), comando;


char palabra[longitud+1];

if(longitud>0)
{
strcpy(palabra, recorte);

for(i=0; i<longitud; i++)
palabra[i]=recorte[longitud-1-i];

palabra[longitud]=recorte[longitud];
comando=strcmp(palabra, recorte);
}
else
comando=-1;

return(comando);

}[/i]

Rtg

Dios si prograna D yo no tnog ni puta idea de to eso D

AvariciA

el gets tiene un inconveniene cuando llegas al final de cadena '\0' pero es lo unico q hay si no kieres meter la cadena a pedal

litri

#13

Muchisimas gracias, funciona estupendamente. :)

A ver si mirando como lo has echo se me ocurre alguna idea propia... sino ... :D.

Usuarios habituales

  • litri
  • AvariciA
  • Rtg
  • maRc
  • Xtigma
  • LiuM
  • _dekan_