AYUDA CON OPERADORES EN C, POR FAVOR !!!!

#1
Hola, tengo esta tarea
"Realiza un programa en donde utilices, por lo menos, una de las expresiones aritméticas (lógicas y relacionales), a la vez que cambies la prioridad de los operadores aritméticos utilizando paréntesis."

y se me ocurrio estas opciones pero ninguna me ha servido, acudo a ustedes los expertos haber si pueden revisarlas

OPCION 1
#include <stdio.h>
#include <conio2.h>

int main()

{

int n1,n2,n3=0;
int s,m,s1,m1;
char c1,c2;

printf("realizemos una operacion con tres numeros\n");

printf("introduce el primer numero:\n");
scanf("%i",&n1);

printf("que deseas usar: *,+\n");
c1 = getch();

printf("introduce el segundo numero:\n");
scanf("%i",&n2);

printf("que deseas usar: *,+\n");
c2 = getch();

printf("introduce el tercer numero:\n");
scanf("%i",&n3);

if (c1 == '*')
m = n1 * n2;

if (c1 == '+')
s = n1 + n2;

if (c2 == '*')
m1 = m * n3;

if (c2 == '+')
s1 = s + n3;

printf("el resultado de %i%c1%i%c2%i es\n", m1||s1);

getch();

}

OPCION 2 (intentaba que la operacion se realizara dentro de printf)

#include <stdio.h>
#include <conio2.h>

int main()

{

int n1,n2,n3=0;
char c1,c2;

printf("realizemos una operacion con tres numeros\n");

printf("introduce el primer numero:\n");
scanf("%i",&n1);

printf("que deseas usar: *,+\n");
c1 = getch();

printf("introduce el segundo numero:\n");
scanf("%i",&n2);

printf("que deseas usar: *,+\n");
c2 = getch();

printf("introduce el tercer numero:\n");
scanf("%i",&n3);


printf("el resultado es %d\n", %i %c1 %i %c2 %i );

getch();

}


OPCION 3

#include <stdio.h>
#include <conio2.h>

int main()

{

int n1,n2,n3,par,resul=0;
char operador;

printf("realiza una operacion con tres numeros\n");
printf("introduce el primer numero:\n");
scanf("%i",&n1);

printf("que deseas usar: +,*\n");
operador = getch();

printf("introduce el segundo numero:\n");
scanf("%i",&n2);

if (operador == '+')
par = n1 + n2;

if (operador == '*')
par = n1 * n2;

printf("que deseas usar: +,*\n");
operador = getch();

printf("introduce el tercer numero:\n");
scanf("%i",&n3);

if (operador == '+')
resul = par + n3;

if (operador == '*')
resul = par * n3;

printf("el resultado de %i %c %i %c %i es", n1,n2,n3,resul);

getch();

}
 

jmvd70

Bovino adicto
#3
Tus variables de salida deben ser la misma cantidad que tus porcientos en el printf.

OPCION 3

#include <stdio.h>
#include <conio2.h>

int main()

{

int n1,n2,n3,par,resul=0;
char operador, operador2;

printf("realiza una operacion con tres numeros\n");
printf("introduce el primer numero:\n");
scanf("%i",&n1);

printf("que deseas usar: +,*\n");
operador = getch();

printf("introduce el segundo numero:\n");
scanf("%i",&n2);

if (operador == '+')
par = n1 + n2;

if (operador == '*')
par = n1 * n2;

printf("que deseas usar: +,*\n");
operador2 = getch();

printf("introduce el tercer numero:\n");
scanf("%i",&n3);

if (operador2 == '+')
resul = par + n3;

if (operador2 == '*')
resul = par * n3;

printf("el resultado de %i %c %i %c %i es %i", n1, operador, n2, operador2, n3, resul);

getch();

}

Suerte.
 

NoPicky

Bovino adolescente
#4
OPCION 2 (intentaba que la operacion se realizara dentro de printf)

#include <stdio.h>
#include <conio2.h>

int main()

{

int n1,n2,n3=0;
char c1,c2;

printf("realizemos una operacion con tres numeros\n");

printf("introduce el primer numero:\n");
scanf("%i",&n1);

printf("que deseas usar: *,+\n");
c1 = getch();

printf("introduce el segundo numero:\n");
scanf("%i",&n2);

printf("que deseas usar: *,+\n");
c2 = getch();

printf("introduce el tercer numero:\n");
scanf("%i",&n3);


printf("el resultado es %d\n", %i %c1 %i %c2 %i );

getch();

}


}
no tienes que poner printf("el resultado es %d\n", %i %c1 %i %c2 %i ); tendrias que poner printf("el resultado es %d\n", n1*n2+n3 ); por ejemplo

en vez de usar * y + puedes usar numeros
printf("que decea hacer \n1.-multiplicar\n2.-Sumar);
en vez de %i usa %d es lo mismo
y quiza usar un if para las operaciones pide los 2 numeros primero y luego lo que decea hacer el usuario mul o sum y pon otra variable para guardar el resultado Aux
if(c1==1)
Aux= n1*n2 ;
else if(c2==2)
Aux =n1+n2 ;
luego con la tercera operacion pide el tercer numero despues pides la operacion puedes limpiar una variable para no declarar mas
n1=0;
if(c2==1)
n1=Aux*n3 ;
else if(c2==2)
n1=Aux+n3;
antes de pedir la segunda operacion puedes inicializar c1=0; y volverla a usar y te ahorrarias el c2
 
#5
Para que puedas mostrar en pantalla un valor de una operacion, debes definir una variable que almacene ese valor y que sea compatible con su formato con los datos que ingresas; en ese acaso si sumas o multiplicas dos valores enteros deberas definir una variable entero que almacene esos valores igual si defines valores decimales o flotantes deberas definir a su vez una variable de almacenamiento decimal o flotante.

En todo caso, no vas a poder realizar la operacion de sumatoria o multiplicacion dentro del printf pq esta sentencia solo muestra por pantalla determinado valor, y para ello deberas definir la variable almacenamiento y presentarla por pantalla con el formato que le hayas dado como entero o decimal o flotante, etc...

Xalu-2
 
Arriba