elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  calculadora + interrogatorio
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: calculadora + interrogatorio  (Leído 3,131 veces)
peterfly

Desconectado Desconectado

Mensajes: 94


Ver Perfil
calculadora + interrogatorio
« en: 1 Diciembre 2011, 22:51 pm »

hoy estaba jugando a un juego de sumas... y me preguntaba que si se puede juntar los dos siguientes codigos

codigo 1
Código:
#include <cstdlib>
#include <iostream>
#include <stdio.h>
int main()
{
    unsigned long long int a,b;
     printf("primer numero:");
     scanf(" %llu", &a);
    
     printf("segon numero:");
     scanf(" %llu", &b);
    
     printf("el resultat es %llu", a+b);
    
    system("PAUSE");
    return EXIT_SUCCESS;
}

codigo 2
Código:
*preguntes i respostes*/
#include <cstdlib>
#include <iostream>
#include <stdio.h>
#include <string.h>
int main (void)
{
 
    int i;
    char cadena1[40]="";
        char respuesta =0;
    do{
    printf("pregunta \n \n");
    printf("escriba la pregunta:  ");
    gets(cadena1);
    
    i= strcmp(cadena1,"cuantos años tengo");
    if (i==0){
    printf("10");
    }
    i= strcmp(cadena1,"de donde soy");
    if (i==0){
    printf("valencia");
    }

std::cout << "\n\ndesea continuar (S o N o C)?\n";
std::cin >> respuesta;
setbuf(stdin,NULL);
switch (respuesta){
      
case 's':
printf("ha salido con la respuesta s\n\n\n");
break;

case 'c':
printf("\nprograma creado por\nGUILLEM BORRAS I MARTI");
break;

case 'n':
printf("ha salido con la respuesta n");
return false;
break;
default:
 
printf("ha salido sin la letra n o s");
return false;
break;
 
}
}while ((respuesta =='s')||(respuesta == 'S'));
 
     getchar();
     return 0;
}

alguien me puede ayudar a juntarlos???

gracias de antemano


En línea

Leyer


Desconectado Desconectado

Mensajes: 786


leyer@elhacker.net


Ver Perfil WWW
Re: calculadora + interrogatorio
« Respuesta #1 en: 1 Diciembre 2011, 23:05 pm »

es una pregunta algo rara :xD


En línea

peterfly

Desconectado Desconectado

Mensajes: 94


Ver Perfil
Re: calculadora + interrogatorio
« Respuesta #2 en: 1 Diciembre 2011, 23:08 pm »

la verdad es que si... pero se puede??? como???... no lo se... por eso lo preguntaba...
En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: calculadora + interrogatorio
« Respuesta #3 en: 2 Diciembre 2011, 00:23 am »

Es posible, la forma mas facil es colocando el codigo de cada programa en una funcion (por supuesto con las correcciones pertinentes).

Un empujon:
Código
  1. #include <iostream>
  2. using std::cout;
  3. using std::endl;
  4.  
  5. #include <cstdio>
  6. using std::printf;
  7. using std::scanf;
  8.  
  9. void fn_programa_a();
  10. void fn_programa_b();
  11.  
  12. int main()
  13. {
  14. fn_programa_a();
  15. fn_programa_b();
  16.  
  17. return 0;
  18. }
  19.  
  20. void fn_programa_a()
  21. {
  22. unsigned long a;
  23. unsigned long b;
  24.  
  25. printf("primer numero:");
  26. scanf("%lu", &a);
  27.  
  28. printf("segon numero:");
  29. scanf("%lu", &b);
  30.  
  31. printf("el resultat es %lu", a+b);
  32. }
  33.  
  34. void fn_programa_b()
  35. {
  36. // codigo del segundo programa ...
  37. }

Dos detalles a considerar: 1) Casi no utilizas las facilidades del lenguaje C++ y 2) El tipo "long long" no existe en C++ estandar (pero si en C99).

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
peterfly

Desconectado Desconectado

Mensajes: 94


Ver Perfil
Re: calculadora + interrogatorio
« Respuesta #4 en: 2 Diciembre 2011, 17:49 pm »

he puesto el siguente codigo
Código:
#include <iostream>
using std::cout;
using std::endl;
 
#include <cstdio>
using std::printf;
using std::scanf;
 
void fn_programa_a();
void fn_programa_b();
 
int main()
{
fn_programa_a();
fn_programa_b();
 
return 0;
}
 
void fn_programa_a()
{
unsigned long a;
unsigned long b;
 
printf("primer numero:");
scanf("%lu", &a);
 
printf("segon numero:");
scanf("%lu", &b);
 
printf("el resultat es %lu", a+b);
}
 
void fn_programa_b()
{
unsigned long a;
unsigned long b;

int i;
    char cadena1[40]="";
        char respuesta =0;
    do{
    printf("pregunta \n \n");
    printf("escriba la pregunta:  ");
    gets(cadena1);
   
    i= strcmp(cadena1,"cuantos años tengo");
    if (i==0){
    printf("10");
    }
    i= strcmp(cadena1,"de donde soy");
    if (i==0){
    printf("valencia");
    }

std::cout << "\n\ndesea continuar (S o N o C)?\n";
std::cin >> respuesta;
setbuf(stdin,NULL);
switch (respuesta){
       
case 's':
printf("ha salido con la respuesta s\n\n\n");
break;

case 'c':
printf("\nprograma creado por\nGUILLEM BORRAS I MARTI");
break;

case 'n':
printf("ha salido con la respuesta n");
return false;
break;
default:
 
printf("ha salido sin la letra n o s");
return false;
break;
 
}
}while ((respuesta =='s')||(respuesta == 'S'));
}

y donde pone
Código:
return false;

me dice el siguiente error
Código:
return-statement with a value, in funcion returning 'void'
En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: calculadora + interrogatorio
« Respuesta #5 en: 2 Diciembre 2011, 18:21 pm »

Porque al declarar la funcion:
Código
  1. void fn_programa_b();
Se esta indicando que ella no retorna un valor, si vas a utilizar la sentencia de retorno esta debe ser:
Código
  1. return;

Pero como esta tu programa lo mejor es simplemente eliminarla.

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
peterfly

Desconectado Desconectado

Mensajes: 94


Ver Perfil
Re: calculadora + interrogatorio
« Respuesta #6 en: 2 Diciembre 2011, 18:41 pm »

muxas gracias amigo... aora me falta que al principio me pregunte si quiero usar la calculadora o si quiero usar el interrogatorio...
En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: calculadora + interrogatorio
« Respuesta #7 en: 2 Diciembre 2011, 19:07 pm »

Para eso solo debes crear un menú donde el usuario elija la opción y en base a esta se llame a una de las funciones.

Inténtalo, no es difícil.

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
peterfly

Desconectado Desconectado

Mensajes: 94


Ver Perfil
Re: calculadora + interrogatorio
« Respuesta #8 en: 9 Diciembre 2011, 16:22 pm »

He puesto el siguiente codigo
Código:
/*calculadora + interrogatori*/

#include <stdio.h>
#include <cstdlib>
#include <iostream>
#include <string.h>

int main()
{
int opcion;

do{
printf("\n *** MENU *** \n");
printf("\n 1. Calculadora\n");
printf("\n 2. Interrogatorio");
printf("\n Selecciona una opcio: ");
scanf("%d",&opcion);

}while(opcion < 1 || opcion > 2);
switch(opcion)
{
case 1:
unsigned long long int a,b;
printf("\n ***CALCULADORA***\n");
printf("primer numero:");
scanf(" %llu", &a);    
printf("segon numero:");
scanf(" %llu", &b);
printf("el resultat es %llu", a+b);
break;

case 2:
char cadena1[40]="";
char respuesta =0;
do{
printf("\n ***INTERROGATORIO***\n");
printf("escriba una pregunta:  ");
gets(cadena1);
    {
 int i;
i= strcmp(cadena1,"cuantos años tengo");
if (i==0){
printf("pocos");
}
i= strcmp(cadena1,"cuando naci");
if (i==0){
printf("no me acuerdo");
break;
}
getche();
return 0;
}

Y donde pone:
Código:
getche();
return 0;
}
me dice "error" y no consigo resolverlo... me podeis ayudar???

gracias
En línea

peterfly

Desconectado Desconectado

Mensajes: 94


Ver Perfil
Re: calculadora + interrogatorio
« Respuesta #9 en: 9 Diciembre 2011, 16:51 pm »

no me di cuenta... envez de poner
Código:
getchar();

puse
Código:
getche();

pero sigo con el problema de antes pero envez de en esa parte solo me dice error en el ultimo "}"
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con calculadora
Multimedia
fitipal 6 2,631 Último mensaje 10 Junio 2005, 16:35 pm
por fitipal
Calculadora
Electrónica
Neobius 2 4,586 Último mensaje 11 Noviembre 2005, 17:24 pm
por Neobius
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines