• Miércoles 6 de Noviembre de 2024, 04:08

Autor Tema:  Re: Ordenar letras por orden alfabético  (Leído 13414 veces)

Arsys

  • Miembro activo
  • **
  • Mensajes: 26
    • Ver Perfil
Re: Ordenar letras por orden alfabético
« en: Lunes 25 de Agosto de 2003, 18:13 »
0
Pues eso, estoy escribiendo un programa que lea 10 letras y que muestre la que va en primer lugar en el alfabeto.

He hecho esto hasta ahora:


 
Citar
#include <stdio.h>

int main(int argv, char **argc)

{
  int num, ch;
 
  for(num=1; num<11; num++)
  {
    printf("Introduzca la letra %d: ", num);
 
    ch=getche();
    printf("n");
  }
  printf("n");
  system("pause");
}


Pero no se me ocurre como hacer para ordenar las letras.

A ver si alguien me da alguna idea.

Saludos :hippi:

Astor

  • Miembro MUY activo
  • ***
  • Mensajes: 112
    • Ver Perfil
Re: Ordenar letras por orden alfabético
« Respuesta #1 en: Lunes 25 de Agosto de 2003, 19:43 »
0
Evalua los valores ASCII de los caracteres :good:

Arsys

  • Miembro activo
  • **
  • Mensajes: 26
    • Ver Perfil
Re: Ordenar letras por orden alfabético
« Respuesta #2 en: Lunes 25 de Agosto de 2003, 23:29 »
0
:think:

Saludos :hippi:

plaf

  • Miembro activo
  • **
  • Mensajes: 57
    • Ver Perfil
Re: Ordenar letras por orden alfabético
« Respuesta #3 en: Martes 26 de Agosto de 2003, 01:07 »
0
muestra solo la primera o las ordena todas? si es la 1a, es bastante simple:


#include <stdio.h>

int main(int argc, char **argv)
{

int num;
char ch,menor=1000;

for(num=1; num<11; num++)
{
printf("Introduzca la letra %d: ", num);

ch=getchar();

if(ch<menor) menor=ch;

printf("n");
}
printf("nnLa menor es la %c",menor);
system("pause");
}

Arsys

  • Miembro activo
  • **
  • Mensajes: 26
    • Ver Perfil
Re: Ordenar letras por orden alfabético
« Respuesta #4 en: Martes 26 de Agosto de 2003, 02:25 »
0
Ahora si que lo he entendido, gracias.

Saludos :hippi:

Arsys

  • Miembro activo
  • **
  • Mensajes: 26
    • Ver Perfil
Re: Ordenar letras por orden alfabético
« Respuesta #5 en: Martes 26 de Agosto de 2003, 15:19 »
0
He ido a probar tu código pero no funcionaba bien, lo he corregido un poco, el menor debía de estar puesto como variable int, y getchar() no sirve, hay que usar getche().

Lo que no entiendo es la diferencia que hay entre getche() y getchar(), lo único que se es que con getche() funciona y con getchar() no, a ver si alguien me lo puede aclarar.

Este es el código modificado:


 
Citar
#include <stdio.h>

int main(int argv, char **argc)

{
  int num, menor=1000;
 
  char ch;
 
  for(num=1; num<11; num++)
  {
    printf("Introduzca la letra %d: ", num);
   
    ch=getche();
   
    if(ch<menor)menor=ch;
   
    printf("n");
  }
  printf("n");
 
  printf("La primera letra es %c nn", menor);
 
  system("pause");
}



Saludos :hippi:

plaf

  • Miembro activo
  • **
  • Mensajes: 57
    • Ver Perfil
Ordenar letras por orden alfabético
« Respuesta #6 en: Viernes 29 de Agosto de 2003, 05:12 »
0
lo del menor como int debe ser porque lo inicialice como 1000 y no me acorde que el valor maximo de un char es 255... y getche()... no se