Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: wazausky en 10 Marzo 2013, 02:35 am



Título: AYUDA CON VARIABLES CHAR
Publicado por: wazausky en 10 Marzo 2013, 02:35 am
Buenas, necesito que este programa

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(int argc, char *argv[])
  5. {
  6.  float a, b, c, o, r;
  7.  printf("Ingrese el valor de a: ");
  8.  scanf("%f", &a);
  9.  printf("\nIngrese el valor de b: ");
  10.  scanf("%f", &b);
  11.  while (1)
  12.  {
  13.        printf("\nEscoja la operacion a realizar: \n");
  14.        printf("\n1.- a+b\n");
  15.        printf("\n2.- a-b\n");
  16.        printf("\n3.- a*b\n");
  17.        printf("\n4.- a/b\n\n");
  18.        scanf("%f", &o);
  19.        if (o==1)
  20.        {
  21.                 c=a+b;
  22.                 printf("\n%f + %f = %f\n", a, b, c);
  23.                 printf("\n\nDesea realizar otra operacion?\n");
  24.                 printf("\n1.- SI\n");
  25.                 printf("\n2.- NO\n\n");
  26.                 scanf("%f", &r);
  27.                 if (r==2)
  28.                 {
  29.                              return 0;
  30.                 }
  31.        }
  32.        if (o==2)
  33.        {
  34.                 c=a-b;
  35.                 printf("%f - %f = %f", a, b, c);
  36.                 printf("\n\nDesea realizar otra operacion?\n");
  37.                 printf("\n1.- SI\n");
  38.                 printf("\n2.- NO\n\n");
  39.                 scanf("%f", &r);
  40.                 if (r==2)
  41.                 {
  42.                              return 0;
  43.                 }
  44.  
  45.        }
  46.        if (o==3)
  47.        {
  48.                 c=a*b;
  49.                 printf("%f*%f = %f", a, b, c);
  50.                 printf("\n\nDesea realizar otra operacion?\n");
  51.                 printf("\n1.- SI\n");
  52.                 printf("\n2.- NO\n\n");
  53.                 scanf("%f", &r);
  54.                 if (r==2)
  55.                 {
  56.                              return 0;
  57.                 }
  58.        }
  59.        if (o==4)
  60.        {
  61.                 if(b==0)
  62.                 {
  63.                 printf("Division no definida para b = 0");
  64.                 }
  65.                 else
  66.                 {
  67.                     c=a/b;
  68.                     printf("%f/%f = %f", a, b, c);
  69.                     printf("\n\nDesea realizar otra operacion?\n");
  70.                     printf("\n1.- SI\n");
  71.                     printf("\n2.- NO\n\n");
  72.                     scanf("%f", &r);
  73.                     if (r==2)
  74.                     {
  75.                              return 0;
  76.                     }
  77.                 }
  78.        }
  79.  }
  80. }
  81.  

En la parte de

Código
  1. printf("\n\nDesea realizar otra operacion?\n");
  2.                     printf("\n1.- SI\n");
  3.                     printf("\n2.- NO\n\n");
  4.                     scanf("%f", &r);
  5.                     if (r==2)
  6.                     {
  7.                              return 0;
  8.                     }
  9.  

Quiero que "r" no sea float sino char.
Ayuda por favor y gracias :)


Título: Re: AYUDA CON VARIABLES CHAR
Publicado por: durasno en 10 Marzo 2013, 05:53 am
mmmm algo me dice q este programa no es tuyo...
Citar
Quiero que "r" no sea float sino char.
char r;   ;)


Plantea mejor tu duda. Saludos


Título: Re: AYUDA CON VARIABLES CHAR
Publicado por: wazausky en 10 Marzo 2013, 06:32 am
mmmm algo me dice q este programa no es tuyo...char r;   ;)


Plantea mejor tu duda. Saludos

Primero este programa lo acabo de hacer, y no se que es lo que no entiendes.
Necesito que R no sea una variable float sino char mm ahora si quedo claro???????


Título: Re: AYUDA CON VARIABLES CHAR
Publicado por: naderST en 10 Marzo 2013, 08:15 am
Donde declaras la variable r como float, la declaras como char y en el scanf() utilizas %c y no %f.


Título: Re: AYUDA CON VARIABLES CHAR
Publicado por: leosansan en 10 Marzo 2013, 10:50 am
Donde declaras la variable r como float, la declaras como char y en el scanf() utilizas %c y no %f.

Y además se repite demasiado código. Creo que con un switch estaría más "contenido" el programa:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(int argc, char *argv[])
  5. {
  6.  float a, b;
  7.  int o;
  8.  char r;
  9.  printf("Ingrese el valor de a: ");
  10.  scanf("%f", &a);
  11.  printf("\nIngrese el valor de b: ");
  12.  scanf("%f", &b);
  13.  while (1)  {
  14.        printf("\nEscoja la operacion a realizar: \n");
  15.        printf("\n1.- a+b\n");
  16.        printf("\n2.- a-b\n");
  17.        printf("\n3.- a*b\n");
  18.        printf("\n4.- a/b\n\n");
  19.        scanf("%d", &o);
  20.        switch (o){
  21.        case 1:
  22.            printf("\n%g + %g = %g\n", a, b,a+b);
  23.            break;
  24.        case 2:
  25.            printf("%g - %g = %g", a, b, a-b);
  26.            break;
  27.        case 3:
  28.            printf("%g*%g = %g", a, b, a*b);
  29.            break;
  30.        case 4:
  31.            if(b==0)
  32.                printf("Division no definida para b = 0");
  33.            else  {
  34.                printf("%g/%g = %g", a, b, a/b);
  35.            }
  36.            break;
  37.        default:
  38.            puts("\nOperacion no valida");
  39.            break;
  40.        }
  41.        printf("\n\nDesea realizar otra operacion?\n");
  42.        printf("\n1.- S\n");
  43.        printf("\n2.- N\n\n");
  44.        scanf(" %c", &r);
  45.        if (r!='s' && r!='S')
  46.            return 1;
  47.    }
  48.    return 0;
  49. }
  50.  
  51.  

Saluditos!. ...(http://smilies-gifs.com/hola-adios/8hola-adios.gif)


Título: Re: AYUDA CON VARIABLES CHAR
Publicado por: durasno en 10 Marzo 2013, 21:11 pm
Citar
Necesito que R no sea una variable float sino char mm ahora si quedo claro???????
No, y la respuesta te la di

Código
  1. char r;



Título: Re: AYUDA CON VARIABLES CHAR
Publicado por: wazausky en 10 Marzo 2013, 21:25 pm
No, y la respuesta te la di

Código
  1. char r;



Y tu cres que si fuera asi de sencillo no lo hubiera echo ya?

GENIUS


Título: Re: AYUDA CON VARIABLES CHAR
Publicado por: durasno en 10 Marzo 2013, 21:32 pm
Citar
Y tu cres que si fuera asi de sencillo no lo hubiera echo ya?
Es por eso q te dije q plantearas mejor tu duda, porque la respuesta a "Quiero que r no sea float sino char." es "char r"


Título: Re: AYUDA CON VARIABLES CHAR
Publicado por: daryo en 10 Marzo 2013, 21:47 pm
y para que quieres que sea char ?

sabiendo eso talves sea mas facil ayudarte

podrias hacer algo como

Código
  1. char rr;
  2. float r=99; // por darle un valor a r
  3. rr=(char)r;
  4.  

a eso te refieres? ademas ten en cuenta que los valores ascii son numeros enteros , si pones algo como 1.1 no se que podria pasar


Título: Re: AYUDA CON VARIABLES CHAR
Publicado por: leosansan en 10 Marzo 2013, 22:57 pm
y para que quieres que sea char ?

.............................

Porque es una variable que va a tomar el valor de un caracter 's' u otro, como creo que está meridiana mente claro en el código que postee más arriba.

De cualquier manera, ya durasno se lo dejo claro por activa y por pasiva.

Saluditos!, ,,,
(http://i1280.photobucket.com/albums/a497/leosansan/21grandes_zps5c60ab85.gif)


Título: Re: AYUDA CON VARIABLES CHAR
Publicado por: Saberuneko en 13 Marzo 2013, 17:16 pm
Y tu cres que si fuera asi de sencillo no lo hubiera echo ya?

Yo creo que si planteas bien tu duda, se te responderá bien.
También creo que si tratas a la gente con más calma y respeto, se te responderá incluso mejor.

Ahora bien, SUPONIENDO que lo que quieres hacer es lo que creo.

Ya se te ha dicho:

Código:
char r;

Donde declaras la variable r como float, la declaras como char y en el scanf() utilizas %c y no %f.

Lo pruebas y comentas si te funcionó.
Si no tira, pasa el source nuevo, y a ver qué falla.