Test Foro de elhacker.net SMF 2.1

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


#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
 float a, b, c, o, r;
 printf("Ingrese el valor de a: ");
 scanf("%f", &a);
 printf("\nIngrese el valor de b: ");
 scanf("%f", &b);
 while (1)
 {
       printf("\nEscoja la operacion a realizar: \n");
       printf("\n1.- a+b\n");
       printf("\n2.- a-b\n");
       printf("\n3.- a*b\n");
       printf("\n4.- a/b\n\n");
       scanf("%f", &o);
       if (o==1)
       {
                c=a+b;
                printf("\n%f + %f = %f\n", a, b, c);
                printf("\n\nDesea realizar otra operacion?\n");
                printf("\n1.- SI\n");
                printf("\n2.- NO\n\n");
                scanf("%f", &r);
                if (r==2)
                {
                             return 0;
                }
       }
       if (o==2)
       {
                c=a-b;
                printf("%f - %f = %f", a, b, c);
                printf("\n\nDesea realizar otra operacion?\n");
                printf("\n1.- SI\n");
                printf("\n2.- NO\n\n");
                scanf("%f", &r);
                if (r==2)
                {
                             return 0;
                }
               
       }
       if (o==3)
       {
                c=a*b;
                printf("%f*%f = %f", a, b, c);
                printf("\n\nDesea realizar otra operacion?\n");
                printf("\n1.- SI\n");
                printf("\n2.- NO\n\n");
                scanf("%f", &r);
                if (r==2)
                {
                             return 0;
                }
       }
       if (o==4)
       {
                if(b==0)
                {
                printf("Division no definida para b = 0");
                }
                else
                {
                    c=a/b;
                    printf("%f/%f = %f", a, b, c);
                    printf("\n\nDesea realizar otra operacion?\n");
                    printf("\n1.- SI\n");
                    printf("\n2.- NO\n\n");
                    scanf("%f", &r);
                    if (r==2)
                    {
                             return 0;
                    }
                }
       }
 }
}


En la parte de


printf("\n\nDesea realizar otra operacion?\n");
                    printf("\n1.- SI\n");
                    printf("\n2.- NO\n\n");
                    scanf("%f", &r);
                    if (r==2)
                    {
                             return 0;
                    }


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...
CitarQuiero 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
Cita de: durasno en 10 Marzo 2013, 05:53 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
Cita de: 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.

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

Código (cpp) [Seleccionar]
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
 float a, b;
 int o;
 char r;
 printf("Ingrese el valor de a: ");
 scanf("%f", &a);
 printf("\nIngrese el valor de b: ");
 scanf("%f", &b);
 while (1)  {
       printf("\nEscoja la operacion a realizar: \n");
       printf("\n1.- a+b\n");
       printf("\n2.- a-b\n");
       printf("\n3.- a*b\n");
       printf("\n4.- a/b\n\n");
       scanf("%d", &o);
       switch (o){
       case 1:
           printf("\n%g + %g = %g\n", a, b,a+b);
           break;
       case 2:
           printf("%g - %g = %g", a, b, a-b);
           break;
       case 3:
           printf("%g*%g = %g", a, b, a*b);
           break;
       case 4:
           if(b==0)
               printf("Division no definida para b = 0");
           else  {
               printf("%g/%g = %g", a, b, a/b);
           }
           break;
       default:
           puts("\nOperacion no valida");
           break;
       }
       printf("\n\nDesea realizar otra operacion?\n");
       printf("\n1.- S\n");
       printf("\n2.- N\n\n");
       scanf(" %c", &r);
       if (r!='s' && r!='S')
           return 1;
   }
    return 0;
}



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
CitarNecesito que R no sea una variable float sino char mm ahora si quedo claro???????
No, y la respuesta te la di

char r;

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

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
CitarY 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 (c++) [Seleccionar]
char rr;
float r=99; // por darle un valor a r
rr=(char)r;


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
Cita de: daryo en 10 Marzo 2013, 21:47 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
Cita de: wazausky en 10 Marzo 2013, 21:25 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:

Cita de: durasno en 10 Marzo 2013, 05:53 AM
char r;

Cita de: 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.

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