• Sábado 14 de Diciembre de 2024, 12:52

Autor Tema:  no se que me falta  (Leído 2429 veces)

apec18

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
no se que me falta
« en: Jueves 30 de Julio de 2009, 19:57 »
0
Que tal estoy haciendo un programa que determine si una palabra o frase fue escrita en mayúscula, minúscula o mixta aqui tengo mis codigos pero tengo una falla que no se que paso mirenlo

#include <iostream>
#define mt 500
using namespace std;
char txt[mt];
int len , Uper = 0 , Lower = 0;
int main(){
    cout << "Inserte su texto( 500 chrs ): " << endl;
    cin >> txt;
   
    len = strlen( txt );
   
    for ( int i = 0; i < len; i++ ){
        if ( (txt >= 'a') && (txt <= 'z') ) Lower++; else
        if ( (txt >= 'A') && (txt <= 'Z') ) Uper++;
        }
   
    if ( Uper == 0 && Lower > 0 && len > 0 ) cout << "Todas son minúsculas."; else
    if ( Uper > 0 && Lower == 0 && len > 0 ) cout << "Todas son mayúsculas."; else
    if ( Uper > 0 && Lower && len > 0) cout << "Es mixto."; else
    if ( len == 0 ) cout << "Su texto no tine chrs.";
   
    system( "pause > nul" );
   
    return EXIT_SUCCESS;
    }

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: no se que me falta
« Respuesta #1 en: Jueves 30 de Julio de 2009, 20:06 »
0
El error esta aca, en txt:

if ( (txt >= 'a') && (txt <= 'z') ) Lower++; else
if ( (txt >= 'A') && (txt <= 'Z') ) Uper++;

No estas accediendo a un caracter del array, fijate que estas en un bucle for y la variable i no la estas usando para nada dentro del mismo.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

apec18

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Re: no se que me falta
« Respuesta #2 en: Jueves 30 de Julio de 2009, 20:10 »
0
hazale el cambio porfavor para ver que paso

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: no se que me falta
« Respuesta #3 en: Jueves 30 de Julio de 2009, 21:30 »
0
En cada txt reemplaza por txt.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

apec18

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Re: no se que me falta
« Respuesta #4 en: Jueves 30 de Julio de 2009, 22:53 »
0
Ok ya vi lo que paso lo arregle miralo aqui y ademas gracias.
#include <iostream>
#define mt 500
using namespace std;
char txt[mt];
int len , Uper = 0 , Lower = 0;
int main(){
    cout << "Inserte su texto( 500 chrs ): " << endl;
    cin >> txt;
   
    len = strlen ( txt );
   
     for ( int i = 0; i < len; i++ ){
        if ( (txt >= 'a') && (txt <= 'z') ) Lower++; else
        if ( (txt >= 'A') && (txt <= 'Z') ) Uper++;
        }
   
    if ( Uper == 0 && Lower > 0 && len > 0 ) cout << "Todas son minusculas."; else
    if ( Uper > 0 && Lower == 0 && len > 0 ) cout << "Todas son mayusculas."; else
    if ( Uper > 0 && Lower && len > 0) cout << "Es mixto."; else
    if ( len == 0 ) cout << "Su texto no tine chrs.";
   
    system( "pause > nul" );
   
    return EXIT_SUCCESS;
    }

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: no se que me falta
« Respuesta #5 en: Jueves 30 de Julio de 2009, 23:18 »
0
De nadas  B)

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

apec18

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Re: no se que me falta
« Respuesta #6 en: Sábado 1 de Agosto de 2009, 16:42 »
0
Que tal nuevamente hago otros dos programas que me estan dando problemas miralos aqui y los codigos:

1-Determine cuales son los cubos narcisistas menores o iguales que 5000.

Código: C++
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main( )
  4. {
  5.   int i, j, k, ic, jc, kc, num;
  6.  
  7.   for(i 0 <=> 500; i++)
  8.   {
  9.     ic = i*i*i;
  10.     for(j=0; j<=9; j++)
  11.     {
  12.       jc = j*j*j;
  13.       for(k=0; k<=9; k++)
  14.       {
  15.         kc = k*k*k;
  16.         num =(i*1000) + (j*5) + (k*1);
  17.         if(num == ic + jc + kc)
  18.          printf("%d es un numero narcisistan", num);
  19.       }
  20.     }
  21.   }
  22.  
  23.   system("PAUSE");
  24.   return 0;
  25. }
  26.  

2-Encontrar el mínimo número de billetes y/o monedas para representar una cantidad de dinero dada.
Ejemplo: para 1548.43 el cambio mínimo sería:
1 billete de 1000 pesos
1 billete de 500 pesos
2 billetes de 20 pesos
1 moneda de 5 pesos
3 monedas de 1 peso
1 moneda de 25 centavos
1 moneda de 10 centavos
1 moneda de 5 centavos
3 monedas de 1 centavo

Código: C++
  1.  
  2. #include <iostream>
  3. #include <stdlib.h>
  4. using namespace std;
  5. int main(int argc, char *argv[])
  6. {
  7.    int b1000, b500, b20, b5, b1, b0.25, b0.10, b0.05, b0.01, pesos;
  8.    printf( "n   Introduzca cantidad entera (Pesos): " );
  9.    scanf( "%d", &pesos );
  10.    if ( pesos > 0 )
  11.    {
  12.       /* Billetes de 1000 */
  13.       if ( pesos >= 1000 )
  14.       {
  15.          b1000 = pesos / 1000;
  16.          pesos %= 1000;
  17.       }
  18.       else
  19.          b1000 = 0;
  20.       /* Billetes de 500 */
  21.       if ( pesos >= 500 )
  22.       {
  23.          b500 = pesos / 500;
  24.          pesos %= 500;
  25.       }
  26.       else
  27.          b500 = 0;
  28.       /* Billetes de 20 */
  29.       if ( pesos >= 20 )
  30.       {
  31.          b100 = pesos / 20;
  32.          pesos %= 20;
  33.       }
  34.       else
  35.          b20 = 0;
  36.       /* Monedas de 5 */
  37.       if ( pesos >= 5 )
  38.       {
  39.          b5 = pesos / 5;
  40.          pesos %= 5;
  41.       }
  42.       else
  43.          b5 = 0;
  44.      /* Monedas de 1 */
  45.       if ( pesos >= 1 )
  46.       {
  47.          b1 = pesos / 1;
  48.          pesos %= 1;
  49.       }
  50.       else
  51.          b1 = 0;
  52.       /* Monedas de 25 centavos */
  53.       if ( pesos >= 0.25 )
  54.       {
  55.          b0.25 = pesos / 0.25;
  56.          pesos %= 0.25;
  57.       }
  58.       else
  59.          b0.25 = 0;
  60.        
  61.           /* Monedas de 10 centavos */
  62.       if ( pesos >= 0.10 )
  63.       {
  64.          b0.10 = pesos / 0.10;
  65.          pesos %= 0.10;
  66.       }
  67.       else
  68.          b0.10 = 0;
  69.        
  70.           /* Monedas de 5 centavos */
  71.       if ( pesos >= 0.05 )
  72.       {
  73.          b0.05 = pesos / 0.05;
  74.          pesos %= 0.05;
  75.       }
  76.       else
  77.          b0.05 = 0;
  78.        
  79.              /* Monedas de 1 centavos */
  80.       if ( pesos >= 0.01 )
  81.       {
  82.          b0.01 = pesos / 0.01;
  83.          pesos %= 0.01;
  84.       }
  85.       else
  86.          b0.01 = 0;
  87.  
  88.       printf( "   %d Papeleta(s) de 1000", b1000 );
  89.       printf( "n   %d Papeleta(s) de 500", b500 );
  90.       printf( "n   %d Papeleta(s) de 20", b20 );
  91.       printf( "n   %d Papeleta(s) de 5", b5 );
  92.       printf( "n   %d Papeleta(s) de 1", b1 );
  93.       printf( "n   %d Centavo(s) de 25", b0.25 );
  94.       printf( "n   %d Centavo(s) de 10", b0.10 );
  95.       printf( "n   %d Centavo(s) de 1", b0.01 );
  96.    
  97.      
  98.    }
  99.    else
  100.      printf( "   ERROR: Cantidad incorrecta, debe ser mayor que cero." );
  101.  
  102.   system("PAUSE");
  103.   return 0;
  104. }
  105.  

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: no se que me falta
« Respuesta #7 en: Sábado 1 de Agosto de 2009, 17:38 »
0
En el primero el problema esta en esta linea:
for(i 0 <=> 500; i++)

Pone el for correcto como los otros del mismo programa.

En el segundo estas usando nombres de variables invalidos e intentado sacar el resto de un numero dividido por otro menor a 1, fijate que resultado daria eso usando una calculadora.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

apec18

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Re: no se que me falta
« Respuesta #8 en: Sábado 1 de Agosto de 2009, 18:33 »
0
En el primer programa:
como es eso de poner el for correcto como los otros del mismo programa.

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: no se que me falta
« Respuesta #9 en: Sábado 1 de Agosto de 2009, 18:56 »
0
Mira la linea en rojo, estan mal la inicializacion y la comparacion.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.

apec18

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Re: no se que me falta
« Respuesta #10 en: Lunes 3 de Agosto de 2009, 04:34 »
0
Muchas gracias ya arregle todos los programas pero para poner punto final chequea este lee al final lo que esta en negrita me dice que esta mal este programa es sobre calcular la persistencia de un numero entero dado La persistencia de un número es la cantidad de veces que hay que multiplicar los dígitos de un número hasta que se convierta en un número de un solo dígito.

Código: C++
  1.  
  2. #include <stdio.h>
  3. #include <conio.h>
  4. int main() {    
  5.       int re1=0,re2=0,re3=0,num=0,num2=0,persi=0;
  6.       printf("Introduzca un numero:");
  7.       scanf("%i",&num);
  8.       num2=num;
  9.       if (num2 >= -9 && num2 <= 9)
  10.       {
  11.         printf("La persistencia de %i es 0",num);  
  12.       }
  13.       else
  14.       {    
  15.       while ((num2 != 0) && (re3 < -9 && re3 > 9))
  16.       {
  17.         re1=num2 % 10;
  18.         num2/=10;
  19.         re2=num2 % 10;
  20.         num2/=10;
  21.         re3=re1 * re2;
  22.         persi++;
  23.         }
  24.         }
  25.        
  26.         if (num2==0)
  27.         {
  28.           if (re3 >= -9 && re3 <= 9)
  29.           {
  30.             printf("La persistencia de %i es %i",num,persi);            
  31.            
  32.           }
  33.           else
  34.           {
  35.             if (re3 >= 9)
  36.            
  37.       getch();
  38.       return 0;
  39. [b]}[/b]
  40.  

Eternal Idol

  • Moderador
  • ******
  • Mensajes: 4696
  • Nacionalidad: ar
    • Ver Perfil
Re: no se que me falta
« Respuesta #11 en: Lunes 3 de Agosto de 2009, 09:03 »
0
Te faltan dos llaves al final (}), si identas el codigo correctamente lo vas a ver.

Nacional y Popular En mi país la bandera de Eva es inmortal.


Queremos una Argentina socialmente justa, económicamente libre y  políticamente soberana.
¡Perón cumple, Evita dignifica!


La mano invisible del mercado me robo la billetera.