lunes, 24 de febrero de 2014

Ejercicios de Introducción a C++.

Aquí unos ejercicios muy sencillos en C++ para los que estén empezando con este lenguaje.

Escriba un programa que lea por teclado una cantidad en pesetas y muestre su correspondencia en euros (1€=166.386 ptas.).

#include <iostream>
using namespace std;
const double cambio = 166.386;

int main() {
 double pesetas, euros;
 cout << "Introduzca una determinada cantidad de pesetas:";
 cin >> pesetas;
 euros = pesetas / cambio;
 cout << "Esa cantidad de pesetas equivale a "<< euros <<" euros.";
 return 0;
}

Escriba un programa que visualice por pantalla el tamaño en bytes que ocupan todos y cada uno de los tipos básicos vistos en clase: int, long, char, etc. Para ello debe usarse el operador sizeof.

#include <iostream>
using namespace std;
int main() {
 cout << "Tamaño en bytes que ocupan los tipos básicos." << endl;
 cout << "bool -> \t"<< sizeof(bool) << " bytes." << endl;
 cout << "char ->\t \t"<< sizeof(char) << " bytes."<< endl;
 cout << "short ->"<< "\t" << sizeof(short) << " bytes." << endl;
 cout << "int -> \t \t"<< sizeof(int) << " bytes." << endl;
 cout << "unsigned ->"<< "\t" << sizeof(unsigned) << " bytes." << endl;
 cout << "long ->" << "\t"  << "\t" << sizeof(long) << " bytes."<< endl;
 cout << "float ->" << "\t" << sizeof(float) << " bytes." << endl;
 cout << "double ->"<< "\t" << sizeof(double) << " bytes." << endl;
 return 0;
}
Escriba un programa que lea cuatro letras por teclado, y posteriormente escriba dichas letras de manera que cada una de ellas se encuentre codificada sustituyéndola por aquel carácter que le sigue en la tabla de código ASCII. Por ejemplo, ante la entrada SETO debe producir la salida TFUP.

#include <iostream>
using namespace std;

int main() {
 char a, b, c, d;
 cout << "Introduce cuatro letras: ";
 cin >> a >> b >> c >> d;
 cout << "La palabra codificada es: " << char(a +1) << char(b+1) << char(c+1) << char(d+1);
 return 0;
}

Escribir un programa que dado un número en bytes, obtenga una magnitud equivalente expresada en Mbytes, Kbytes y bytes.

#include <iostream>
using namespace std;
const double cambio = 1024;


int main() {
 double bytes, mbytes, aux, kbytes;
 cout << "Introduce un número de bytes: " ;
 cin >> bytes;
 mbytes = bytes / (cambio * cambio);
 aux = mbytes - int(mbytes);
 mbytes = int(mbytes);
 kbytes = aux * cambio;
 aux = kbytes - int(kbytes);
 kbytes = int(kbytes);
 bytes = aux * cambio;

 cout << "Equivale a "<< mbytes << " MB, "<< kbytes << " KB y "<< bytes<< " B.";

 return 0;
}

Escribir un programa que calcula la longitud y el área de un círculo.
#include <iostream>
using namespace std;

const double PI=3.1416;

int main(){
 double longitud,area;
 int radio;
 cout << "Radio = ";
 cin >> radio;
 longitud = 2*PI*radio;
 area = PI*(radio*radio);
 cout << "area = "<< area << endl;
 cout << "long = "<< longitud << endl;
 return 0; 
}

Escriba un programa que lea una palabra de cuatro letras minúsculas por teclado y a continuación la escriba en mayúsculas.

#include <iostream>
using namespace std;

int main() {
 char a, b ,c, d;

 do{
 cout << "Introduce una palabra de cuatro letras minúsculas: ";
 cin >> a >> b >> c >> d;
 }while( a < 97 || a > 122 || b < 97 || b > 122 || c < 97 || d < 97 || c > 122 || d > 122  );

 cout << "En mayúscula: ";
 cout << char(a - 32) << char(b-32) << char(c-32) << char(d-32);
 return 0;
}

Escriba un programa que calcule la nota final de una asignatura. Éste habrá de leer por teclado la nota de la parte de teoría y la nota de la parte de problemas, y habrá de calcular la nota final considerando que la parte de teoría vale un 70% de la nota final y la de práctica un 30%

#include <iostream>
using namespace std;
const double PRACTICA = 0.3;
const double TEORIA = 0.7;

int main() {
 double teo, prac, final;
 cout << "Programa que calcula la nota final de una asignatura." << endl;
 cout << "Introduce la nota de la parte teórica: ";
 cin >> teo;
 cout << "Introduce la nota de la parte de problemas: ";
 cin >> prac;

 final = PRACTICA*prac + TEORIA * teo;

 cout << "La nota final de la asignatura es "<< final <<".";

 return 0;
}

No hay comentarios:

Publicar un comentario