Professional Documents
Culture Documents
INTRODUCCIÓN A LA IMPLEMENTACIÓN
DE ALGORITMOS EN DEV C++
- GUÍAS DE PRÁCTICA -
ELABORADO POR:
ANDAHUAYLAS – PERÚ
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
PRESENTACIÓN
El presente trabajo es un compilado de guías de laboratorio preparado para ser utilizado por los
alumnos de la Carrera profesional de Ingeniería de Sistemas o de Ingeniería Informática en las
primeras sesiones de un curso de Introducción a la programación. Nosotros, habilitamos este
material para los alumnos, de forma tal les sirva de guía en la resolución de ejercicios de
programación.
Utilizamos Dev C++ por cuanto, al momento de iniciar el curso lo consideramos un IDE de
programación en C++ adecuado para el curso. Es más muchos autores de bibliografía
relacionada con la programación en C++ lo han estado utilizando en la ejemplificación e
implementación de programas en C++.
Esperamos que el presente conjunto de guías de laboratorio sean de utilidad para absolver
muchas de las dudas que nuestros estudiantes nos han planteado en clase.
El profesor
Página 2 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
OBJETIVO
El alumno podrá realizar una instalación rápida del IDE Dev C++ 4.9.9.2.
DATOS PREVIOS
Para dar inicio a esta práctica, usted necesita contar con los siguientes elementos:
Paquete de software: devcpp-4.9.9.2_setup.exe
METODOLOGIA
Se presentará al alumno imágenes gráficas de una instalación personalizada de Dev C++.
Se solicitará al alumno que realice el mismo proceso de instalación, tal cual se muestran
en las imágenes.
NOTA:
Previamente, usted debería de crear un directorio de trabajo para el almacenamiento del
código fuente de sus programas (Podría ser por ejemplo “D:\Applicaciones C”).
Ejecutar
devcpp-4.9.9.2_setup.exe
Página 3 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
Página 4 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
Página 5 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
Página 6 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
Página 7 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
Página 8 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
La aplicación se ha instalado.
5. La práctica ha finalizado.
Página 9 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
OBJETIVO
El alumno podrá crear una aplicación básica utilizando el IDE Dev C++ 4.9.9.2.
DATOS PREVIOS
Para dar inicio a esta práctica, usted necesita contar con los siguientes elementos:
Paquete de software: devcpp-4.9.9.2_setup.exe (instalado)
METODOLOGIA
Se presentará al alumno ejemplos de programas creados con Dev C++.
Se solicitará al alumno que realice el mismo proceso de creación de una aplicación,
siguiendo el ejemplo mostrado.
NOTA:
Previamente, usted debería de crear un directorio de trabajo para el almacenamiento del
código fuente de sus programas (Podría ser por ejemplo “D:\Applicaciones C”)
Página 10 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
Seleccionar la plantilla
“Console Application”
3. Haciendo uso del ícono “New Carpeta”, crear la nueva carpeta “Programa01”, y luego in
Página 11 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
Sección de
código fuente
Página 12 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
int main(int argc, char *argv[]) int main(int argc, char *argv[])
{ {
cout<<"\n Mi primer programa";
system("PAUSE"); cout<<"\n -----------------";
return EXIT_SUCCESS; cout<<"\n hola amigos";
}
cout<<"\n ";
system("PAUSE");
return EXIT_SUCCESS;
}
9. La práctica ha finalizado.
Página 13 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
OBJETIVO
El alumno podrá crear una aplicación básica utilizando las estructuras de control básicas
en Dev C++ 4.9.9.2.
DATOS PREVIOS
Para dar inicio a esta práctica, usted necesita contar con los siguientes elementos:
METODOLOGIA
Se presentará al alumno ejemplos de programas creados con Dev C++.
Se solicitará al alumno que realice el mismo proceso de creación de una aplicación,
siguiendo el ejemplo mostrado.
NOTA:
Previamente, usted debería de crear un directorio de trabajo para el almacenamiento del
código fuente de sus programas (Podría ser por ejemplo “D:\Applicaciones C”).
Página 14 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
“Implementar un programa tal que leído desde el teclado la edad de una persona, se imprima
en pantalla el texto MAYOR DE EDAD, o MENOR DE EDAD, según corresponda”.
Solución:
Modificar el contenido del archivo main.cpp de la forma cómo se muestra a continuación:
#include <cstdlib>
#include <iostream>
Leer: // 2. Algoritmo
N printf("\n My programa");
printf("\n ---------------------");
printf("\n Leer la edad (N) :");
scanf(“%d”,
scanf(“%d”, &N);
&N);
scanf("%d", &N);
NO IF SI
(N >= 18) if (n
(n >=
>= 18)
18)
if
printf("\n EresMAYOR
printf("\n Eres MAYORdedeedad");
edad");
else
else
Print: printf("\nEres
printf("\n EresMENOR
MENORdedeedad");
edad");
Print:
Es MENOR Es MAYOR
de Edad de Edad
//3. Congelar pantalla
printf("\n ");
system("PAUSE");
return EXIT_SUCCESS;
}
FIN
Página 15 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
“Implementar un programa que dado un valor N numérico, leído desde el teclado, imprima en
pantalla su equivalente en formato texto”
#include <cstdlib>
#include <iostream>
// 2. Algoritmo
printf("\n Escribe un numero(0-9)");
scanf("%d",
scanf(“%d”, &N);
&N);
switch
(N)
switch(N)
switch(N)
{{ case
case 0:0: ss == "Cero";
"Cero"; break;
break;
case
case 1: s = "Uno"; break;
1: s = "Uno"; break;
N=0 N=1 N=2 N=10 case
case 2:2: ss == "Dos";
"Dos"; break;
break;
s = Cero s = "Uno" s = "Dos" ----- s = "Diez" case
case 3:3: ss == "Tres";
"Tres"; break;
break;
case
case 4:4: ss == "Cuatro";
"Cuatro"; break;
break;
case
case 5:5: ss == "Cinco";
"Cinco"; break;
break;
case
case 6:6: ss == "Seis";
"Seis"; break;
break;
case
case 7:7: ss == "Siete";
"Siete"; break;
break;
case
case 8:8: ss == "Ocho";
"Ocho"; break;
break;
case
case 9:9: ss == "Nueve";
"Nueve"; break;
break;
case
case 10:
10: ss == "Diez";
"Diez"; break;
break;
}}
Print:
s printf("\n Usted escribio ");
Página 16 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
“Un programa que dado un valor de N leído desde el teclado, imprima en pantalla N-veces el
saludo HOLA”
#include <cstdlib>
#include <iostream>
// 2. Algoritmo
printf("\n ¿Cuantos saludos? :");
scanf(“%d”, &N);
scanf("%d", &N);
for K = 1 --> N
Print: for
for(K=1;
(K=1;K<=
K<=N;
N;K++)
K++)
"Hola", K { {printf("\n
printf("\nHola
Hola%d",
%d",K);
K);
}}
Página 17 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
“Un programa que dado un valor de N leído desde el teclado, imprima en pantalla N-veces el
saludo HOLA”
K=1
// 2. Algoritmo
printf("\n ¿Cuantos saludos? :");
scanf(“%d”,
scanf("%d", &N);
&N);
while
( K<= N)
Hacer K = 1;
Kwhile
= 1; (K<= N)
while{ (K<= N)
printf("\n Hola %d", k);
Print: { printf("\n
K = K + 1; Hola %d", k);
"Hola", K } K = K + 1;
}
FIN
TAREAS:
Desarrollar los algoritmos planteados en clase
Página 18 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
OBJETIVO
El alumno podrá crear una aplicación básica utilizando las estructuras de control básicas
en Dev C++ 4.9.9.2, tomando como referencia un diagrama de flujo.
DATOS PREVIOS
Para dar inicio a esta práctica, usted necesita contar con los siguientes elementos:
Paquete de software: devcpp-4.9.9.2_setup.exe (instalado)
METODOLOGIA
Se presentará al alumno ejemplos de algoritmos en la forma de diagramas de flujo, y se
les solicitará su implementación en Dev C++.
Se absolverán preguntas en la sesión de esta práctica de laboratorio.
NOTA:
Previamente, usted debería de crear un directorio de trabajo para el almacenamiento del
código fuente de sus programas (Podría ser por ejemplo “D:\Applicaciones C”).
1. Implementar un programa que dados dos números A y B, ambos leídos desde el teclado, que
halle la sumatoria de estos dos números, y que imprima el resultado en la pantalla
#include <cstdlib>
#include <iostream>
INICIO
using namespace std;
// 2. Algoritmo
Leer: printf("\n Leer A:");
B scanf("%d", &A);
scanf(“%d”, &A);
C C== AA +
+ B;
B;
Página 19 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
2. Implementar un programa que dados dos números A y B, ambos leídos desde el teclado, que
halle el promedio de ambos números, y que imprima el resultado en la pantalla.
#include <cstdlib>
#include <iostream>
INICIO
using namespace std;
Leer: // 2. Algoritmo
B printf("\n Leer A:");
scanf("%d", &A);
scanf(“%d”, &A);
CC == (float(A)
(A + B)/2; + float(B)) / 2;
Print:
printf("\nEl
printf("\n Elresultado
resultadoes:
es:%d",
%d",C);
C);
C
Página 20 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
3. Implementar un programa que lea desde el teclado la Nota de un alumno, y que imprima en
pantalla si el alumno está APROBADO o DESAPROBADO.
#include <cstdlib>
#include <iostream>
Leer:
int Nota;
int N;
Nota
// 2. Algoritmo
printf("\n My programa");
printf("\n ---------------------");
printf("\n Leer la Nota :");
scanf(“%d”, &Nota);
scanf("%d", &N);
NO IF SI
(Nota >= 11) if
if (Nota
(n >= >=
18)11)
printf("\n Está
printf("\n Eres APROBADO");
MAYOR de edad");
else
else
printf("\n Eres
printf("\n Está DESAPROBADO");
MENOR de edad");
Print: Print:
DESAPROBADO APROBADO
5. El ejercicio ha finalizado.
Página 21 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
6. Implementar un programa que resuelva una ecuación de segundo grado de la forma que se
indica, y que imprima el resultado en pantalla.
Solución,
2
La ecuación de segundo grado tiene la forma: AX + BX + C = 0
Leer: float A, B, C, X;
B int N;
// 2. Algoritmo
8. El ejercicio ha finalizado.
Página 22 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
9. Implementar un programa que al leer un número N desde el teclado, imprima en pantalla los
N-primeros números Fibonacci.
NOTA: La secuencia de números Fibonacci es: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, …
Solución,
#include <cstdlib>
INICIO
#include <iostream>
int
int K,
K, T, F0,F1,
T, F0, F1,N; N;
// 2. Algoritmo
for K = 1 ---> N printf("\n Leer N:");
scanf(“%d”, &N);
scanf("%d", &N);
printf("\n");
CASE for
for (K(K == 1;
1; K<=N;
K<=N; K++)
K++)
(K ) {{
switch(K)
switch(K)
{ case 1: {F0=0; F1 = 0;
Caso { case 1: {F0=0;
break;F1 = 0;
K=1 contrario }break;
K=2
T = F1 case 2: }F1 = 1; break;
F0 = 0 F0 = 0 case 2: F1 = 1; break;
default:
F1 = F0 + F1
F1 = 0 F1 = 1 default: { T = F1;
F0 = T
{ T F1
= F1;
= F0 + F1;
F1F0= =F0T;+ F1;
F0break;
= T;
}break;
} }
Print: }
printf(" %d,", F1);
F1 }
printf(" %d,", F1);
Página 23 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
12. Implementar un programa que tal que al leer N números desde el teclado, imprima en pantalla
la siguiente información:
a) El porcentaje de números múltiplos de 3
b) El porcentaje de números pares
INICIO
c) El porcentaje de números múltiplos de 10
Solución,
Leer:
N #include <cstdlib>
#include <iostream>
M2 == 0;
M2 0;
NO IF SI M3 == 0;
M3 0;
( P %2 = 0 ) M10= 0;0;
M10=
M2 = M2 + 1
for (K = 1; K<=N; K++)
for (K = 1; K <= N; K++)
{ printf(“\n Leer P: ”);
{
printf("\n Leer Número:
scanf(“%d”, &P); ");
NO IF
scanf("%d",&P);
SI
( P %3 = 0 ) if (P%2 ==0 ) M2 = M2 + 1;
M3 = M3 + 1 if (P%2 ==0)M2 = M2 + 1;
if (P%3 ==0 ) M3 = M3 + 1;
if (P%3 ==0)M3 = M3 + 1;
if(P%10 ==0 ) M10 = M10 + 1;
if (P%10==0)M10 = M10 + 1;
NO IF SI }
( K %10 = 0 ) }
printf("\nMultiplos de
printf("\nMultiplos de 22 :: %.2f
%.2f ",
", P2);
P2);
P2 = (M2 / N) * 100 printf("\nMultiplos de
de 33 :: %.2f
%.2f ",
", P3);
P3);
printf("\nMultiplos
P3 = (M3 / N) * 100 printf("\nMultiplos de
de 10:
10: %.2f
%.2f ",
", P10);
P10);
printf("\nMultiplos
P10 = (P10 / N) * 100
FIN
Página 24 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
TAREAS:
1. Implementar un programa tal que leído desde el teclado un número N, el programa deberá
indicar si tal número “es primo” o “no es primo”:
INICIO
Leer:
N
primo = 1
SI NO
IF
(N%k)=0
primo = 0
SI IF NO
primo=0
print: print:
"Es Primo" "No es primo"
FIN
2. Ingrese por teclado un número X y un número N. Luego calcule el valor del número X
elevado al exponente N. Halle el diagrama de flujo y luego realice la respectiva
implementación en C++.
Página 25 de 26
Introducción a la Implementación de Algoritmos en Dev C++ Univ. Nac. José María Arguedas
Carrera Profesional de Ingeniería de Sistemas Docente: Ing. Edwin O. Ramos Velásquez
BIBLIOGRAFÍA
Página 26 de 26