Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - bmillar

#1
hola amigos, tengo que realizar el ordenamiento alfabetico de diferentes maneras,ascendente, descendente, por su largo y con mayusculas.
la estructura general la tengo, lo que no puedo lograr es realizar los ordenamientos llamandalos desde sub rutinas.
les dejo el programa para que lo analicen

#include<stdio.h>

char nombres[30][30];


/* compara dos strings caracter por caracter.
Implementación manual de strcmp */

int strcmp_arry(char *src1, char *src2){   //espera dos punteros a char y compara caracter a caracter.
    int i=0;
    while((src1!='\0') || (src2!='\0')){
        if(src1 > src2)
            return 1;
        if(src1 < src2)
            return -1;
        i++;
        }
    return 0;
   }

void ordenaAlfabetico(int n)
{
   int i,j,aux;
   char nombres[30][30]; // es una prueba esta parte
     for(i=0;i<n;i++){
   for(j=0;j<n-1;j++){
      comp = strcmp( nombres[j], nombres[j+1] );
      if(comp > 0){
         strcpy(aux,nombres[j]);
         strcpy(nombres[j],nombres[j+1]);
         strcpy(nombres[j+1],aux);
      }
   }
}
   
}
void ordenaAlfabetico2(int n){
   
   
}
void ordenaAlfabeticoR(int n){
   
   
}
void ordenaLargo(int n){
   
   
}
void despliegaListado(int n){
    int i;
   
    for(i=0;i<n;i++){
        printf("Sujeto [%d] : %s",i, nombres);
        }   
    }


int main( ){
/* Puedes añadir tus propias variables si las requieres */
int n,i,j,opcion=1;
/* Ingreso de nombres */
printf("Ingrese el tamaño del listado:");
scanf("%d",&n);   
printf("Ingrese los nombres a la lista :\n");
for(i=0;i<n;i++){
    printf("Sujeto [%d] : ",i);
    scanf("%s",nombres);
    }
   
while (opcion>0){
    printf("1) Ordena los nombres alfabeticamente\n");
    printf("2) Ordena los nombres AlFaBeTiCaMeNTe\n");
    printf("3) Ordena los nombres alfabeticamente por su última letra\n");
    printf("4) Ordena los nombres por longitud\n");
    printf("0) Terminar\n");
   
    printf("Opcion : ");
    scanf("%d",opcion);
   
    if(opcion==1){
        ordenaAlfabetico(n);
        }
    else if(opcion==2){
        ordenaAlfabetico2(n);
        }
    else if(opcion==3){
        ordenaAlfabeticoR(n);
        }
    else if(opcion==4){
        ordenaLargo(n);
        }
/* despliegua el listado de nombres para mostrar el resultado */
    despliegaListado(n);
    }
   
return 0;
}
#2
hola buenas, soy nuevo en la programacion y necesito ayuda con un codigo,Lo llevo todo bastante bien por el momento,pero cuando coloco algun numero que tenga 0 me arroja un error. ejemplo el numero 708, me arroja error cuando contiene 0
el enunciado es el siguiente:
Se dice que un número es autodivisible si cada uno de sus dígitos divide exactamente el número
formado por todos los dígitos hasta el dígito en cuestión. Veamos algunos ejemplos:
1. El número 213 es autodivisible porque 2 se divide a sí mismo, 1 divide a 21, y 3 divide a 213.
Se pide:Escriba un programa que solicite ingresar un número natural (entero positivo) y retorne si el número ingresado es autodivisible o no.
Decir tambien que apenas tengo estudios y los que tengo los utilize asi que no sean muy malos conmigo  :P

Un saludo