You are on page 1of 13

Escrito por Nestor Gómez

Jueves, 29 de Marzo de 2012 15:26

Ejercicios Básicos Resueltos en C/C++ (Parte 1)

Acá les dejo una serie de ejercicios ya resueltos en los cuales se pone en practica
cada una de las cosas que hemos venido estudiando en los artículos anteriores, como lo
son la declaraciones, tipos de datos, operadores, entra y salida de datos entre otras
cosas.

Los ejercicios están resueltos tanto en


lenguaje C como en C++ y contienen
comentarios que deben facilitar la comprensión
del funcionamiento del código, por el momento
son ejercicios bastante simples ya que hasta el
momento no entramos en temas como las
estructuras condicionales y los bucles que
agregan un poco de mayor complejidad a la
logia que se debe emplear para resolver los
problemas que se planteen.

Cada ejercicio ya ha sido compilado sin


errores empleando el entorno de desarrollo
integrado Dev-C++, el cual pueden descargar
desde aquí mismo y con el cual he estado realizando los videotutoriales hasta el
momento.

1. Escriba el código fuente para un programa que dado por el usuario un monto en
dólares estadounidenses, determine su equivalencia en Bolívares Fuertes, sabiendo que la
tasa de cambio es de 4.3 Bolívares por dólar.

01.// codigo fuente en C


02.#include <stdio.h>
03.#include <conio.h>
04.main() {
05.float dolares, bolivares;
06.const float cambio = 4.3;
07.printf("Indique la cantidad de dolares a transformar en
Bolivares\n");
08.scanf("%f",&dolares);
09.bolivares = dolares * cambio;
10.printf("%.2f dolares equivalen a %.2f Bs.F", dolares, bolivares);
11.getch();
12.return 0;
13.}

01.// codigo fuente en C++


02.#include <iostream>
03.using namespace std;
04.main() {
05.float dolares, bolivares;
06.const float cambio = 4.3;
07.cout << "Indique la cantidad de dolares a transformar en
Bolivares" << endl;
08.cin >> dolares;
09.bolivares = dolares * cambio;
10.cout << dolares << " dolares equivalen a " << bolivares << "
Bs.F" << endl;
11.system("pause");
12.return 0;
13.}

2. Desarrolle el código fuente de un programa que lea desde el teclado la cantidad de


un producto comprada por un cliente y el precio del producto que este cliente compro
para luego imprimir en pantalla el monto a pagar por el producto aplicándole un I.V.A. de
12 porciento.

01.// codigo fuente en C


02.#include <conio.h>
03.#include <stdio.h>
04.// multiplicar por 0.12 equivale al 12% que es el IVA
05.main() {
06.float precio, total;
07.int cantidad;
08.const float IVA = 0.12;
09.printf("Introduzca la cantidad\n");
10.scanf("%i",&cantidad);
11.printf("Introduzca el precio\n");
12.scanf("%f",&precio);
13.total = precio * cantidad + precio * cantidad * IVA;
14.printf("Debe pagar un total del %.2f Bs.F\n", total);
15.getch();
16.return 0;
17.}

01.// codigo fuente en C++


02.#include <iostream>
03.using namespace std;
04.main() {
05.float precio, total;
06.int cantidad;
07.const float IVA = 0.12; // multiplicar por 0.12 equivale al 12%
08.cout << "Introduzca la cantidad" << endl;
09.cin >> cantidad;
10.cout << "Introduzca el precio" << endl;
11.cin >> precio;
12.total = precio * cantidad + precio * cantidad * IVA;
13.cout << "Debe pagar un total del " << total << " Bs.F" << endl;
14.system("pause");
15.return 0;
16.}

3. Realice el código fuente para un programa que solicite al usuario el radio en


centímetros correspondiente a la base de un recipiente cilíndrico y la altura de este
también en centímetros, para luego determinar el volumen en centímetros cúbicos que
puede almacenar dicho recipiente.

01.// codigo fuente en C


02.#include<stdio.h>
03.#include<conio.h>
04.main(){
05.const float P = 3.141593; // numero irracional Pi
06.float r, h, v;
07.printf("Digite el valor en centrimetros correspondiente al
radio\n");
08.scanf("%f",&r);
09.printf("Digite el valor en centrimetros correspondiente a la
altura\n");
10.scanf("%f",&h);
11.v = P*r*r*h; // radio al cuadrado es igual que radio por radio
12.printf("El volumen del recipiente es de %f Centimetros
Cubicos.\n",v);
13.getch();
14.return 0;
15.}

01.// codigo fuente en C++


02.#include<iostream>
03.using namespace std;
04.main(){
05.const float P = 3.141593; // numero irracional Pi
06.float r, h, v;
07.cout << "Digite el valor en centrimetros correspondiente al
radio\n";
08.cin >> r;
09.cout << "Digite el valor en centrimetros correspondiente a la
altura\n";
10.cin >> h;
11.v = P*r*r*h; // radio al cuadrado es igual que radio por radio
12.cout << "El volumen del recipiente es de " << v << " Centimetros
Cubicos.\n";
13.system("pause");
14.return 0;
15.}

4. Desarrolle el código fuente de un programa que pida al usuario, ingresar por teclado
su año de nacimiento y posteriormente determine cuantos años esta cumpliendo en este
año que transcurre (2012).

01.// codigo fuente en C


02.#include<stdio.h>
03.#include<conio.h>
04.main(){
05.const int A = 2012; // año actual
06.int a,e;
07.printf("Introduzca su año de nacimiento\n");
08.scanf("%i",&a);
09.e = A-a; // radio al cuadrado es igual que radio por radio
10.printf("En 2012 usted cumple %i años.\n",e);
11.getch();
12.return 0;
13.}

01.// codigo fuente en C++


02.#include<iostream>
03.using namespace std;
04.main(){
05.const int A = 2012; // año actual
06.int a,e;
07.cout << "Introduzca su año de nacimiento\n";
08.cin >> a;
09.e = A-a; // radio al cuadrado es igual que radio por radio
10.cout << "En 2012 usted cumple " << e << " años.\n";
11.system("pause");
12.return 0;
13.}

5. Escriba el código fuente de un programa, que dada la longitud en metros de cada


uno de los lados que forman un triangulo, determine el área en metros cuadrados que
este ocupa.

01.// codigo fuente en C


02.#include<stdio.h>
03.#include<conio.h>
04.#include<math.h> // Biblioteca para funciones matematicas.
05.main(){ //para obtener el area se bebe aplicar la fórmula de Herón.
06.float s,a,b,c,x,area;
07.printf("Introduzca la longitud en metros del primer lado: ");
08.scanf("%f",&a);
09.printf("Introduzca la longitud en metros del segundo lado: ");
10.scanf("%f",&b);
11.printf("Introduzca la longitud en metros del tercer lado: ");
12.scanf("%f",&c);
13.s = (a+b+c)/2; // s es el semiperimetro del triángulo.
14.x = s*(s-a)*(s-b)*(s-c);
15.area = sqrt(x); // la funcion sqrt() calcula la raiz cuadrada.
16.printf("El triangulo tiene un area de %f metros
cuadrados.\n",area);
17.getch();
18.return 0; // si los valores no corresponden a un triangulo...
19.} // ...entonces el calculo sera erroneo.
01.// codigo fuente en C++
02.#include<iostream>
03.#include<cmath> // Biblioteca para funciones matematicas.
04.using namespace std;
05.main(){ //para obtener el area se bebe aplicar la fórmula de Herón.
06.float s,a,b,c,x,area;
07.cout << "Introduzca la longitud en metros del primer lado: ";
08.cin >> a;
09.cout << "Introduzca la longitud en metros del segundo lado: ";
10.cin >> b;
11.cout << "Introduzca la longitud en metros del tercer lado: ";
12.cin >> c;
13.s = (a+b+c)/2; // s es el semiperimetro del triángulo.
14.x = s*(s-a)*(s-b)*(s-c);
15.area = sqrt(x); // la funcion sqrt() calcula la raiz cuadrada.
16.cout << "\nEl triangulo tiene un area de " << area;
17.cout << " metros cuadrados.\n\n";
18.system("pause");
19.return 0; // si los valores no corresponden a un triangulo...
20.} // ...entonces el calculo sera erroneo.

Ejercicios Básicos Resueltos en C/C++ (Parte 2)

Acá les dejo una serie de ejercicios ya resueltos en los cuales se pone en practica
cada una de las cosas que hemos venido estudiando en los artículos anteriores, como lo
son la declaraciones, tipos de datos, operadores, entra y salida de datos entre otras cosas.

Los ejercicios están resueltos tanto en lenguaje C como en C++ y contienen


comentarios que deben facilitar la comprensión del funcionamiento del código, por el
momento son ejercicios bastante simples ya que hasta el momento no entramos en temas
como las estructuras condicionales y los bucles que agregan un poco de mayor
complejidad a la logia que se debe emplear para resolver los problemas que se planteen.

Cada ejercicio ya ha sido compilado sin errores empleando el entorno de desarrollo


integrado Dev-C++, el cual pueden descargar desde aquí mismo y con el cual he estado
realizando los videotutoriales hasta el momento.

6. Realice un programa que dadas 5 calificaciones, cada una representando un 20% de


la nota final y todas evaluadas en base a 20 puntos, determine cual es la nota definitiva del
estudiante.
01.// codigo fuente en C
02.#include<stdio.h>
03.#include<conio.h>
04.main(){
05.float n1, n2, n3, n4, n5, d;
06.printf("PROGRAMA QUE CALCULA LA NOTA DEFINITIVA DE UN
ESTUDIANTE.");
07.printf("\nDEBE INGREZAR SOLO NOTAS EN BASE A 20 PUNTOS.\n\n");
08.printf("Digite la primera nota: ");
09.scanf("%f",n1);
10.printf("Digite la segunda nota: ");
11.scanf("%f",n2);
12.printf("Digite la tercera nota: ");
13.scanf("%f",n3);
14.printf("Digite la cuarta nota: ");
15.scanf("%f",n4);
16.printf("Digite la quinta nota: ");
17.scanf("%f",n5);
18.d = (n1 + n2 + n3 + n4 + n5)/5; // promedio entre las 5 notas.
19.printf("\nLa nota definitiva del estudiante es %f\n\n", d);
20.getch();
21.return 0;
22.}

01.// codigo fuente en C++


02.#include<iostream>
03.using namespace std;
04.main(){
05.float n1, n2, n3, n4, n5, d;
06.cout << "PROGRAMA QUE CALCULA LA NOTA DEFINITIVA DE UN
ESTUDIANTE.";
07.cout << "\nDEBE INGREZAR SOLO NOTAS EN BASE A 20 PUNTOS.\n\n";
08.cout << "Digite la primera nota: ";
09.cin >> n1;
10.cout << "Digite la segunda nota: ";
11.cin >> n2;
12.cout << "Digite la tercera nota: ";
13.cin >> n3;
14.cout << "Digite la cuarta nota: ";
15.cin >> n4;
16.cout << "Digite la quinta nota: ";
17.cin >> n5;
18.d = (n1 + n2 + n3 + n4 + n5)/5; // promedio entre las 5 notas.
19.cout << "\nLa nota definitiva del estudiante es " << d << "\n\n";
20.system("pause");
21.return 0;
22.}

7. Desarrolle un programa que lea la cantidad de un mismo producto comprada por un


cliente y determine el monto que debe pagar, sabiendo que cada producto tiene un valor
de 15 Bs.F y que si el cliente compra más de una docena de unidades de este producto, se
le hace un descuento del 20%. Ojo no se utilizara la estructura condicional if porque aun
no llegamos a ese tema y este es un ejemplo de como utilizar el tipo de datos bool.

01.// codigo fuente en C


02.#include<stdio.h>
03.#include<conio.h>
04.main(){
05.const int PRECIO = 15, K = 12;
06.const float DESCUENTO = 0.2; // 20%
07.int cantidad;
08.float monto;
09.bool x = 0; // El compilador DEV-C++ solo acepta el tipo de dato
bool
10./* pero lo correcto en lenguaje C es el tipo de dato boolean
11.porque bool es propio de C++ */
12.printf("Indique la cantidad de productos comprada por el
cliente\n");
13.scanf("%i",cantidad);
14.x = cantidad > K;
15.monto = PRECIO * cantidad;
16.monto = monto - PRECIO * cantidad * DESCUENTO * x;
17.printf("\nEl monto que debe pagar es %f\n", monto);
18.getch();
19.return 0;
20.}

01.// codigo fuente en C++


02.#include<iostream>
03.using namespace std;
04.main(){
05.const int PRECIO = 15, K = 12;
06.const float DESCUENTO = 0.2; // 20%
07.int cantidad;
08.float monto;
09.bool x = 0;
10.cout << "Indique la cantidad de productos comprada por el
cliente\n";
11.cin >> cantidad;
12.x = cantidad > K;
13.monto = PRECIO * cantidad;
14.monto = monto - PRECIO * cantidad * DESCUENTO * x;
15.cout << "\nEl monto que debe pagar es " << monto << endl << endl;
16.system("pause");
17.return 0;
18.}

8. Escriba el código fuente para un programa que solicite al usuario un carácter y


devuelva como resultado el código ASCII del carácter leído.
01.// codigo fuente en C
02.#include <conio.h>
03.#include <stdio.h>
04.main() {
05.char caracter;
06.printf("Escriba un caracter\n");
07.scanf("%c",&caracter);
08.printf("Su representacion en codigo ACSII es %i\n",caracter);
09.getch();
10.return 0;
11.}

01.// codigo fuente en C++


02.#include <iostream>
03.using namespace std;
04.main() {
05.char caracter;
06.int ascii;
07.cout << "Escriba un caracter\n";
08.cin >> caracter;
09.ascii = caracter;
10.cout << "\nSu representacion en codigo ACSII es " << ascii << endl
<< endl;
11.system("pause");
12.return 0;
13.}

9. Realice un programa que dadas la velocidad de un móvil y la distancia que debe


recorrer desde un punto a otro, determine en tiempo que tardara en su recorrido.

01.// codigo fuente en C


02.#include<stdio.h>
03.#include<conio.h>
04.main(){
05.float distancia, velocidad, tiempo;
06.printf("Utilice un mismo sistema de unidades, MKS o CGS\n");
07.printf("No debe colocar las unidades de medicion, ");
08.printf("solo el valor que corresponda.\n\n");
09.printf("Indique la distancia que debe recorrer el movil\n");
10.scanf("%f",&distancia);
11.printf("Indique la velocidad a la cual se desplaza el movil\n");
12.scanf("%f",&velocidad);
13.tiempo = distancia / velocidad;
14.printf("\nse calcula que debe realizar el recorrido en un tiempo de
");
15.printf("%f segundos.\n\n",tiempo);
16.getch();
17.return 0;
18.}

01.// codigo fuente en C++


02.#include<iostream>
03.using namespace std;
04.main(){
05.float distancia, velocidad, tiempo;
06.cout << "Utilice un mismo sistema de unidades, MKS o CGS\n";
07.cout << "No debe colocar las unidades de medicion, ";
08.cout << "solo el valor que corresponda.\n\n";
09.cout << "Indique la distancia que debe recorrer el movil\n";
10.cin >> distancia;
11.cout << "Indique la velocidad a la cual se desplaza el movil\n";
12.cin >> velocidad;
13.tiempo = distancia / velocidad;
14.cout << "\nse calcula que debe realizar el recorrido en un tiempo
de ";
15.cout << tiempo << " segundos." <<endl << endl;
16.system("pause");
17.return 0;
18.}

10. Dada la rapidez con que inicia su caída un objeto y el tiempo en segundos que tarda
en caer al suelo, desarrolle un programa que muestre como resultado la distancia en
centímetros que separa al objeto del suelo al momento de iniciar su caída sabiendo que la
gravedad que ejerce la tierra sobre el cuerpo es equivalente a 9,81 metros por segundo
cuadrado.

01.// codigo fuente en C


02.#include<stdio.h>
03.#include<conio.h>
04.main(){ // la formula es h= Vo*t + g*t^2 /2
05.const float G = 9.81;
06.float v, t, h;
07.printf("Escriba el valor en metros por segundo de la rapidez ");
08.printf("con que inicia su caida el objeto\n");
09.scanf("%f",&v);
10.printf("Escriba el valor en segundos del tiempo que tarda el ");
11.printf("objeto en llegar hasta el suelo\n");
12.scanf("%f",&t);
13.h = v*t + G*t*t/2;
14.printf("\nLa distancia que separa al objeto del suelo cuando");
15.printf(" inicia su caida es de %.3f metros.", h);
16.getch();
17.return 0;
18.}
01.// codigo fuente en C++
02.#include<iostream>
03.using namespace std;
04.main(){ // la formula es h= Vo*t + g*t^2 /2
05.const float G = 9.81;
06.float v, t, h;
07.cout << "Escriba el valor en metros por segundo de la rapidez ";
08.cout << "con que inicia su caida el objeto\n";
09.cin >> v;
10.cout << "Escriba el valor en segundos del tiempo que tarda el ";
11.cout << "objeto en llegar hasta el suelo\n";
12.cin >> t;
13.h = v*t + G*t*t/2;
14.cout << "\nLa distancia que separa al objeto del suelo cuando";
15.cout << " inicia su caida es de " << h << " metros.\n\n";
16.system("pause");
17.return 0;
18.}

EJERCICIOS RESUELTOS
C++

Mostrar los multiplos de 3 comprendidos entre los numeros 1 y 20


#include <stdio.h>
#include <conio.h>
#include <iostream.h>
int main ()
{
clrscr();
for (int i=1;i<=20;i++)
{
cout<<i;
if (i%3==0) cout<<" Es multiplo de 3" <<endl;
else cout<<" No es multiplo de 3"<<endl;
}
getch();
return 0;
}
DEV C
Hallar A+B-C+100
#include <stdio.h>
#include <conio.h.>
int main ()
{
int A, B, C;
printf("Inserte valor para A: "); scanf("%d",&A);
printf("Inserte valor para B: "); scanf("%d",&B);
printf("Inserte valor para C: "); scanf("%d",&C);
printf("\n%d + %d - %d + 100 = %d",A, B, C, (A+B+C-100));
getch();
}
Obtener (a-b)(a+b)

#include <stdio.h>
#include <conio.h>
int main ()
{
int a, b;
printf("Inserte valor a: "); scanf("%d",&a);
printf("Inserte valor b: "); scanf("%d",&b);
printf("(%d-%d) (%d+%d) = %d",a, b, a, b,((a-b)*(a+b)));
getch();
}
Leer un numero de 3 digitos y sumarlos

#include <stdio.h>
#include <conio.h>
int main ()
{
int numero, sum_dig=0;
printf("Inserte un numero de 3 digitos: "); scanf("%d",&numero);
if (numero>=100)
{
int num=numero; //salvamos en num, la variable numero
while (numero!=0)
{
sum_dig=sum_dig+(numero%10); //para sacar el ultimo digito de numero
numero=numero/10; //elimina el ultimo digito de numero
}
printf("La suma de los digitos de %d es : %d",num, sum_dig);
}
else
printf("\a ERROR: El digito no tiene 3 digitos");
getch();
}
Dado un numero verificar:
- Que tenga dos digitos
- Verificar si sus digitos son pares
- Promediar sus digitos
#include <stdio.h>
#include <conio.h>
int main ()
{
int numero;
printf("Inserte num. de dos digitos pares: ");
scanf("%d",&numero);
int aux=numero;
if(numero<100 && numero>9)
{
int d1=numero%10;
numero=numero/10;
int d2=numero%10;
if(d1%2==0 & d2%2==0)
printf("El promedio d los digitos de %d es: %d",aux,(d1+d2)/2);
}
else
printf("\aERROR: el numero no tiene dos digitos");
getch();
}
Dado un numero verificar si es positivo, negativo o nulo
#include <stdio.h>
#include <conio.h>
int main ()
{
int numero;
printf("Inserte un numero: ");
scanf("%d",&numero);
if(numero==0)
printf("El numero %d es NULO",numero);
else
{
if(numero<0)
printf("El numero %d es NEGATIVO",numero);
else
printf("El numero %d es POSITIVO",numero);
}
getch();
}
Dados seis numeros enteros determinar, el menor de ellos
#include<stdio.h>
#include<conio.h>
int main()
{
int a, b, c, d, e, f;
printf("Inserte num.1: "); scanf("%d",&a);
printf("Inserte num.2: "); scanf("%d",&b);
printf("Inserte num.3: "); scanf("%d",&c);
printf("Inserte num.4: "); scanf("%d",&d);
printf("Inserte num.5: "); scanf("%d",&e);
printf("Inserte num.6: "); scanf("%d",&f);
int menor=a;
if(b<menor) menor=b;
if(c<menor) menor=c;
if(d<menor) menor=d;
if(e<menor) menor=e;
if(f<menor) menor=f;
printf("El menor de %d,%d,%d,%d,%d,%d ",a,b,c,d,e,f);
printf("\nEs %d",menor);
getch();

You might also like