Pues nada, que en informática estamos dando lenguajes de programación y me entró la curiosidad por aprender C++.

NOTA IMPORTANTE: Por ahora el programa solo ha sido probado en Windows 7, donde sí funciona. Debería funcionar en XP y Vista, aunque no lo sé seguro.

Pues tras un par de horas en informática y otro en casa, he terminado un pequeño programa.

No es nada del otro mundo, sólo es una «calculadora» que hace, además de las operaciones básicas, perímetros y áreas de algunos polígonos. Podéis descargarlo abajo.

Click para ampliar
Mostrar/ocultar código

#include <iostream>
#include <string>
#include <math.h>
#include <stdio.h>
#define PI 3.14159265
using namespace std;
int suma(){
double s1, s2;
cout << "Introduce el primer sumando: ";
cin >> s1;
cout << "Introduce el segundo: ";
cin >> s2;
double sr=s1+s2;
cout << "El resultado es: " << endl << sr << endl;
return 0;
}
int resta(){
double r1, r2;
cout << "Introduce el primer numero: ";
cin >> r1;
cout << "Introduce el segundo: ";
cin >> r2;
double rr=r1-r2;
cout << "El resultado es: " << endl << rr << endl;
return 0;
}
int multi (){
double multiplicando, multiplicador;
cout << "Introduce el multiplicando: ";
cin >> multiplicando;
cout << "Introduce el multiplicador: ";
cin >> multiplicador;
double mr=multiplicando*multiplicador;
cout << "El resultado es: " << endl << mr << endl;
return 0;
}
int divis (){
double dividendo, divisor;
cout << "Introduce el dividendo: ";
cin >> dividendo;
cout << "Introduce el divisor: ";
cin >> divisor;
double dr=dividendo/divisor;
cout << "El resultado es: " << endl << dr << endl;
return 0;
}
int pot(){
double base, exp;
cout << "Introduce la base: ";
cin >> base;
cout << "Introduce el exponente: ";
cin >> exp;
double pr=base;
int i=1;
while (i<exp) {
pr=pr*base;
i++;
}
cout << "El resultado es: " << endl << pr << endl;
return 0;
}
int raiz (){
double raiz1;
cout << "Introduce el radicando: ";
cin>>raiz1;
double raizr= sqrt(raiz1);
cout << "El resultado es: " << endl << raizr << endl;
return 0;
}
int sengrad (){
double ang;
cout << "Introduce un angulo (en grados)";
cin >> ang;
double sinr= sin (ang*PI/180);
cout << "El resultado es: " << endl << sinr << endl;
return 0;
}
int senrad (){
double ang;
cout << "Introduce un angulo (en radianes)";
cin >> ang;
double sinr= sin(ang);
cout << "El resultado es: " << endl << sinr << endl;
return 0;
}
int cosgrad (){
double ang;
cout << "Introduce un angulo (en grados)";
cin >> ang;
double cosr= cos (ang*PI/180);
cout << "El resultado es: " << endl << cosr << endl;
return 0;
}
int cosrad (){
double ang;
cout << "Introduce un angulo (en radianes)";
cin >> ang;
double cosr= cos (ang);
cout << "El resultado es: " << endl << cosr << endl;
return 0;
}
int areaCuadrado(){
double l1;
cout << "Introduce un lado: ";
cin >> l1;
double rareac=l1*l1;
cout << "El resultado es: " << endl << rareac << endl;
return 0;
}
int longCuadrado(){
double l1;
cout << "Introduce un lado: ";
cin >> l1;
double rlongc=4*l1;
cout << "El resultado es: " << endl << rlongc << endl;
return 0;
}
int areaRect(){
double l1, l2;
cout << "Introduce un lado: ";
cin >> l1;
cout << "Introduce el otro: ";
cin >> l2;
double rareaR=l1*l2;
cout << "El resultado es: " << endl << rareaR << endl;
return 0;
}
int longRect(){
double l1, l2;
cout << "Introduce un lado: ";
cin >> l1;
cout << "Introduce el otro: ";
cin >> l2;
double rlongR=2*l1+2*l2;
cout << "El resultado es: " << endl << rlongR << endl;
return 0;
}
int areaTri(){
double base, l1, l2;
cout << "Introduce la base:";
cin >> base;
cout << "La base es: " << base << endl << "Introduce un lado:";
cin >> l1;
cout << "Introduce el otro: ";
cin >> l2;
//TEOREMA DE HERÓN
double s=(base+l1+l2)/2;//Semiperímetro
double a2=s*(s-l1)*(s-l2)*(s-base);//área al cuadrado
double rareaTri=sqrt(a2);
cout << "El resultado es: " << endl << rareaTri << endl;
return 0;
}
int areaTri2(){
double base, altura;
cout << "Introduce la base:";
cin >> base;
cout << "La base es" << base << "Introduce la altura:";
cin >> altura;
double rareaTri=base*altura/2;
cout << "El resultado es: " << endl << rareaTri << endl;
return 0;
}
int areaCirc(){
double radio;
cout << "Introduce el radio:";
cin >> radio;
double rareaC=PI*radio*radio;
cout << "El resultado es: " << endl << rareaC << endl;
return 0;
}
int longCirc(){
double radio;
cout << "Introduce el radio:";
cin >> radio;
double rlongC=PI*radio*2;
cout << "El resultado es: " << endl << rlongC << endl;
return 0;
}
int main () {
char q;
int operador;
cout << "Programa creado por Emilio Cobos Alvarez"<< endl << "Realiza diversas operaciones y calculos" << endl << "NOTA IMPORTANTE:ACEPTA DECIMALES, PERO HAY QUE PONER PUNTOS \".\" EN VEZ DE COMAS \",\"" << endl;
cout << "¿Que quieres hacer?" << endl << "1-Suma"<< endl << "2-Resta" << endl << "3-Multiplicar" << endl << "4-Dividir" << endl << "5-Potencia" << endl << "6-Raiz cuadrada" << endl << "7-seno(grados)" << endl << "8-Seno (Radianes)" << endl << "9-Coseno (grados)" << endl << "10-Coseno (radianes)" << endl << "11-area del cuadrado" << endl << "12-Longitud del Cuadrado" << endl << "13-Area del rectángulo" << endl << "14-Longitudo del rectangulo" << endl << "15-area del triangulo (base y altura)" << endl << "16-Area del triangulo (longitud de sus tres lados)" << endl << "17-area del circulo" << endl << "18-Longitud del circulo"<< endl;
cin >> operador;
switch (operador){
case 1: suma(); break;
case 2: resta(); break;
case 3: multi(); break;
case 4: divis(); break;
case 5: pot(); break;
case 6: raiz(); break;
case 7: sengrad(); break;
case 8: senrad();break;
case 9: cosgrad();break;
case 10: cosrad();break;
case 11: areaCuadrado();break;
case 12: longCuadrado(); break;
case 13: areaRect(); break;
case 14: longRect(); break;
case 15: areaTri2(); break;
case 16: areaTri(); break;
case 17: areaCirc();break;
case 18: longCirc(); break;
default: char q;
cout<<"¿Empezar otra vez (s) o salir (q)?";
cin>>q;
switch (q){
case 's': main(); break;
case 'q': exit (0); break;
default: main(); break;
}; break;
}
cout<<"¿Empezar otra vez (s) o salir (q)?";
cin>>q;
switch (q){
case 's': main(); break;
case 'q': exit (0); break;
default: main(); break;
};
return 0;
}
Descargar Archivo

Me gustaría que lo probarais para ver si hay algún fallo además de la falta de tildes (tengo que mirar cómo se incluyen otros juegos de caracteres), os estaría muy agradecido.