Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/03/2010, 07:06
roser24
 
Fecha de Ingreso: marzo-2010
Mensajes: 127
Antigüedad: 14 años, 10 meses
Puntos: 2
ayuda con cadenas..

Hola,
a todos el ejercicio es el siguiente:

Introducir una cadena de caracteres que contenga números únicamente y convertirla
a entero y dividirla por el valor de un entero introducido posteriormente por teclado. Antes de finalizar se visualizará el resultado obtenido.
Nota: Convierte a entero o entero largo según la longitud de la cadena y ten cuidado con los posibles decimales.*/

lo tengo hecho mas o menos,me ejecuta perono se como modificarlo para tomar en cuenta si lo introducido por el usuario no son numeros,por lo de "introducir una cadena de caracteres que contenga numeros unicamente"

necesito vuestra ayuda chicos,estare en linea..
Saludos y gracias de antemano.


Código C:
Ver original
  1. #include<stdio.h>
  2.  #include<stdlib.h>
  3.  #include<string.h>
  4.  #include<ctype.h>
  5.  
  6.  void main(){
  7.  
  8.   char cadena[12];
  9.   int num,n,aux;
  10.   float div;
  11.  
  12.   printf("introduce la cadena de caracteres numericos\n");
  13.   gets(cadena);
  14.  
  15.     aux=strlen(cadena);      //longitud de la cadena
  16.                   for(aux=0;aux<12;aux++){
  17.                                       if(isdigit(cadena[aux])){
  18.  
  19.  
  20.                                               if(aux<7){   //int..32.768 hasta 32.767
  21.                                               n=atoi(cadena);
  22.                                               }
  23.                                              else {
  24.                                               n=atol(cadena);
  25.                                               }
  26.                                               }
  27.                                              }
  28.  
  29.  
  30.  
  31.                                             printf("inserte un numero:\n");
  32.                                             scanf("%i",&num);
  33.  
  34.                                             div=(n/num);
  35.                                             printf("El resultado de la division entre %s y %i es %0.2f",cadena,num,div);
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  }



En relacion a lo indicado en el enunciado " Convierte a entero o entero largo según la longitud de la cadena " no estoy segura de si lo hago correctamente..,

Última edición por roser24; 21/03/2010 a las 07:21