Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Guia Algoritmos y Programacion Primera Parte
Guia Algoritmos y Programacion Primera Parte
PRIMERA PARTE
1 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
ÍNDICE
2 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
1.1. NETBEANS
1.2. ECLIPSE
Eclipse es una plataforma de desarrollo, diseñada para ser extendida de forma indefinida a
través de plug-ins. Fue concebida desde sus orígenes para convertirse en una plataforma de
integración de herramientas de desarrollo. No tiene contemplado un lenguaje específico, sino
que es un IDE genérico, aunque goza de mucha popularidad entre la comunidad de
desarrolladores del lenguaje de programación Java.
1.3. GEANY
Geany es un editor de texto que usa el kit de herramientas GTK21, con las características
básicas de un entorno de desarrollo integrado. Fue desarrollado para proporcionar un
pequeño y rápido IDE, que tiene sólo unas pocas dependencias de otros paquetes. Es
compatible con muchos tipos de archivos y tiene algunas características interesantes.
1. GTK2 – The GIMP Toolkit es un conjunto de bibliotecas multiplataforma para desarrollar interfaces gráficas de usuario (GUI), principalmente para los
entornos gráficos GNOME, XFCE y ROX aunque también se puede usar en el escritorio de Windows, Mac OS y otros.
3 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
2. LENGUAJE DE PROGRAMACIÓN
Un lenguaje de programación es aquel elemento dentro de la informática que nos permite crear
programas mediante un conjunto de instrucciones, operadores y reglas de sintaxis; que se ponen a
disposición del programador para que este pueda comunicarse con los dispositivos de hardware y de
software existentes.
◦ Lenguaje Máquina.
El lenguaje de máquina es el sistema de códigos directamente interpretable por un
circuito microprogramable, como el microprocesador de un computador. Este
lenguaje está compuesto por un conjunto de instrucciones que determinan
acciones al ser tomadas por la máquina.
◦ Lenguajes Compilados.
Un lenguaje compilado es aquel lenguaje de programación que típicamente se
ejecuta mediante un compilador. Esto implica que una vez escrito el programa, éste
debe traducir su código fuente por medio de un compilador en un archivo
ejecutable para una determinada plataforma. Algunos lenguajes compilados: C,
C++, Java, Pascal, Cobol, Visual Basic.
4 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
◦ Lenguajes Interpretados.
Un lenguaje interpretado es aquel lenguaje de programación en que la mayoría de
sus instrucciones se ejecutan directamente, sin una previa compilación del
programa de instrucciones, el intérprete ejecuta el programa directamente
traduciendo cada sentencia en una secuencia de una o más subrutinas. Algunos
lenguajes interpretados: Perl, PHP, Ruby, Python.
3. PSEUDOCÓDIGOS
El pseudocódigo (o falso lenguaje) es una descripción de alto nivel compacta e informal del principio
operativo de un algoritmo. Utiliza las estructuras de un lenguaje de programación real, pero está
diseñado para la lectura humana en lugar de la lectura máquina. Normalmente, el pseudocódigo
omite detalles que no son esenciales para la comprensión humana del algoritmo, tales como
declaraciones de variables, código específico del sistema y algunas subrutinas. Se utiliza
pseudocódigo pues este es más fácil de entender para las personas que el código del lenguaje de
programación convencional, ya que es una descripción eficiente y con un entorno independiente de
los principios fundamentales de un algoritmo. Se utiliza comúnmente para realizar bosquejos de la
estructura de un programa antes de realizar una efectiva codificación del mismo.
3.1 PSEINT
Proceso SumaResta
var1 <- 0
var2 <- 0
resultado <- 0
Escribir "Ingrese dos Valores Enteros”
Leer var1, var2
Escribir resultado
FinProceso
5 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
El PSeInt es multiplataforma, ya que está disponible para los Sistemas Operativos Microsoft
Windows, Mac OS y GNU/Linux, se puede descargar a través del siguiente enlace
http://pseint.sourceforge.net/index.php?page=descargas.php. Allí deben elegir el sistema
operativo al cual le desean instalar el programa y solo si es para Linux deben escoger la
arquitectura del computador que tengan en su equipo 32 o 64 bits.
4. TIPOS DE DATOS
Un tipo de dato es un atributo de una parte de los datos que le indica al computador algo sobre la
clase de datos que se van a procesar. Esto incluye imponer restricciones en los datos, como qué
valores pueden tomar y qué operaciones se pueden realizar. Los tipos de datos más comunes son:
los numéricos, los caracteres y los lógicos.
5. OPERADORES
Los operadores son aquellos símbolos que se utilizan para manipular datos existentes dentro de un
programa, estos nos permiten poder realizar tareas específicas al momento de una ejecución. Los
operadores se clasifican en los siguientes tipos: aritméticos, relacionales y lógicos.
6 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
6. VARIABLES
Una variable es un espacio de memoria reservado para almacenar un valor que corresponde a un tipo
de dato soportado por el lenguaje de programación. Una variable es representada y usada a través
de una etiqueta (un nombre) que le asigna un programador o que ya viene predefinida.
Dependiendo de donde se declaren las variables, estas podrán ser o no accesibles desde distintas
partes del programa. De acuerdo a esto existen variables:
Globales:
Devuelven su valor en cualquier parte del programa, afectado todas sus partes.
Locales:
Solo devuelven su valor en la parte del programa en donde están definidas, lo que quiere decir
que están restringidas a esa parte y solo esa parte tendrá acceso a dicha variable.
int peso = 10; //Variable numérica tipo entera llamada peso con valor 10
float angulo = 12.87; //Variable numérica tipo coma flotante llamada angulo con valor 12.87
char letra = 'A'; //Variable de carácter tipo caracteres llamada letra con valor A.
char palabra[10] = "HOLA MUNDO”; //Variable de carácter tipo cadena llamada palabra con valor
HOLA MUNDO
bool decision = false; //Variable lógica tipo booleana llamada decision con valor false
7 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
int peso = 10; //Variable numérica tipo entera llamada peso con valor 10
float angulo = 12.87; //Variable numérica tipo coma flotante llamada angulo con valor 12.87
char letra = 'A'; //Variable de carácter tipo caracteres llamada letra con valor A.
String = "HOLA MUNDO”; //Variable de carácter tipo string llamada palabra con valor HOLA
MUNDO
boolean decision = false; //Variable lógica tipo booleana llamada decision con valor false
7. CONSTANTES
Una constante es un valor que no puede ser alterado ni modificado durante la ejecución de un
programa, únicamente puede ser leído por el mismo. Corresponde a una longitud fija dentro un área
reservada en la memoria principal del ordenador, donde el programa almacena valores fijos. Los
valores de una constante son asignados al momento en que estas son declaradas.
8. LIBRERIAS O BIBLIOTECAS
#include <nombre_de_la_libreria>
Adicional es la línea que dice using namespace std; esta línea nos ayuda a declarar un espacio de
nombre que evita tener que usarlo cada que accedemos a alguna función específica de una librería.
Teniendo este namespace declarado podemos llamar por ejemplo el comando cout >>, que
8 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
pertenece a la librería iostream, sin embargo sin este namespace sería std::cout >>, imagina tener
que hacer esto cada vez que uses algún comando o función de las librerías, sería bastante tedioso.
9. ESTRUCTURAS DE CONTROL
Todas las estructuras de control tienen un único punto de entrada y un único punto de salida. Las
estructuras de control se puede clasificar en: selectivas e iterativas. Esto es una de las cosas que
permite que la programación se rija por los principios de la programación estructurada.
9 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
Se utilizan para tomar decisiones lógicas, se evalúa una condición y en función al resultado se
realiza una determinada secuencia de instrucciones. Estas estructuras se clasifican en:
Simple, Dobles, Múltiples.
9.1.1 SIMPLES:
Si <condición> Entonces
<Accion_por_verdadero>
FinSi
9.1.2 DOBLES:
Si <condición> Entonces
<Accion_por_verdadero>
Sino
<Accion_por_falso>
FinSi
9.1.3 MÚLTIPLES:
La estructura de decisión múltiples, es aquella que evalúa una expresión que podrá
tomar N valores distintos, por ejemplo, 1, 2, 3..., N y según que elija uno de estos
valores en la condición, se realizara una de las N acciones o lo que es igual, el flujo del
algoritmo seguirá solo un determinado camino ente los N posibles. Esta estructura se
representa por un selector el cual si toma el valor 1 ejecutará el bloque de acción 1, si
toma el valor 2 ejecutara el bloque de acción 2, si toma el valor N realizara el bloque
de acción N. Su sintaxis en pseudocódigo seria la siguiente:
10 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
En caso contrario:
secuencia_de_acciones_dom
FinSegun
Las estructuras de control iterativas o repetitivas, son aquellas que repiten un bloque de
instrucciones mientras una condición dada sea verdadera. Cada una de las repeticiones que
realizan estas estructuras de control se les denomina bucles. Dentro de estas estructuras
encontramos los siguientes tipos: Mientras, Para, Repetir.
9.2.1. MIENTRAS:
9.2.2. PARA:
La sentencia repetitiva para (for), es aquella que nos permite ejecutar un bucle que se
repita determinado número de veces. Esta sentencia requiere que conozcamos desde
el inicio el número de veces que se desea ejecutar la sentencia del interior del bucle.
Para variable <- valor_inicial Hasta valor_final Con Paso <paso> Hacer
<bloque_de_instrucciones>
FinPara
9.2.3. REPETIR:
Repetir
<bloque_de_instrucciones>
Hasta Que <expresion_logica>
11 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
9.3.1. INSTRUCCIÓN IF
Esta instrucción hace que se ejecuten unas sentencias u otras dependiendo del valor
que toma una condición. La instrucción if puede ser simple o doble:
Alternativa Simple:
if (condición)
instrucción 1;
if (condición)
{
instrucción 1;
instrucción 2;
instrucción N;
}
Alternativa Doble:
if (condición)
instrucción 1;
else
instrucción 2;
if (condición)
{
instrucción 1;
instrucción 2;
}
else
{
instrucción 3;
instrucción 4;
}
12 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
Alternativa Múltiple:
if (condición1)
instrucción 1;
else if (condición2)
instrucción 2;
else if (condición3)
instrucción 3;
else
instrucción 4;
if (condición1)
{
instrucción 1;
instrucción 2;
}
else if (condición2)
{
instrucción 3;
instrucción 4;
}
else if (condición3)
{
instrucción 5;
instrucción 6;
}
else
{
instrucción 7;
instrucción 8;
}
13 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
switch (variable)
{
case constante1:
instrucción 1;
break;
case constante2:
instrucción 2;
break;
case constante3:
instrucción 3:
break;
default:
instrucción por default;
break;
}
while (condición)
{
instrucción 1;
instrucción 2;
….........
instrucción N;
}
14 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
En cambio, con una instrucción while, puede suceder que el bloque de instrucciones
no llegue a ejecutarse nunca si la condición inicialmente es falsa.
do
{
instrucción 1;
instrucción 2;
….........
instrucción N;
} while (condición);
Un bucle for hace que una instrucción o bloque de instrucciones se repitan un número
determinado de veces mientras se cumpla la condición. A continuación de la palabra
for y entre paréntesis debe haber siempre tres zonas separadas por punto y coma:
zona de inicialización
zona de condición
zona de incremento ó decremento.
En alguna ocasión puede no ser necesario escribir alguna de ellas. En ese caso se
pueden dejar en blanco, pero los punto y coma deben aparecer. El funcionamiento de
un bucle for el siguiente:
15 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
#include <iostream>
using namespace std;
int main()
{
int num, cont, x;
cout << "Introduzca número: " << endl;
cin >> num;
cont = 0;
return 0;
}
#include <iostream>
using namespace std;
int main()
{
int x, y;
for (x=1; x <= 9; x++)
{
for (y=0; y <= 9; y++)
{
cout << x << " x " << y << " = " << (x * y) << endl;
}
cout << "\n" << endl;
}
16 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
#include <iostream>
using namespace std;
int main()
{
int num, num2;
cout << "Introduce número: " << endl;
cin >> num;
num2 = num;
while (num2 != 1)
{
num2 = num2 - 1;
num = num * num2;
}
cout << "El factorial es: " << num << "\n" << endl;
return 0;
}
#include <iostream>
using namespace std;
int main()
{
int x = 0, y = 1, z, cont, num = 0;
cout << "Ingrese un numero " << endl;
cin >> num;
17 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
5. Programa que lee un número entero por teclado y muestra si es par o impar.
#include <iostream>
using namespace std;
int main()
{
int num;
cout << "Introduzca numero:" << endl;
cin >> num;
if (num % 2 == 0)
cout << "NUMERO PAR" << endl;
else
cout << "NUMERO IMPAR" << endl;
return 0;
}
6. Algoritmo que lee un número entero que corresponde a una hora y muestra un mensaje según
la hora que se haya leído.
#include <iostream>
using namespace std;
int main()
{
int hora;
cout << "\nIntroduzca una hora (entre 0 y 24): " << endl;
cin >> hora;
if ((hora >= 0) && (hora < 12))
cout << "\nBuenos dias\n" << endl;
else if ((hora >= 12) && (hora < 18))
cout << "\nBuenas tardes\n" << endl;
else if ((hora >= 18) && (hora < 24))
cout << "\nBuenas noches\n";
else
cout << "\nHora no válida\n";
return 0;
}
18 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
7. Algoritmo que lee la calificación obtenida por un alumno en un examen y muestra la estatus
correspondiente.
#include <iostream>
using namespace std;
int main()
{
float nota;
cout << "Introduzca una calificación numérica entre 0 y 20:" << endl;
cin >> nota;
cout << "La calificación del alumno es: " << endl;
if (nota >= 18 && nota <= 20)
{
cout << "Sobresaliente." << endl;
}
else
{
if (nota >= 14 && nota < 18)
{
cout << "Buena." << endl;
}
else
{
if (nota >= 10 && nota < 14)
{
cout << "Regular." << endl;
}
else
{
if (nota >= 0 && nota < 10)
{
cout << "Deficiente." << endl;
}
else
{
cout << "No es valida" << endl;
}
}
}
}
return 0;
}
19 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
8. Algoritmo que lee dos números y una operación y realiza la operación entre esos números.
#include <iostream>
using namespace std;
int main()
{
int A, B;
float Resultado;
char operador;
cout << "Introduzca un numero:" << endl;
cin >> A;
cout << "Introduzca otro numero:" << endl;
cin >> B;
cout << "Introduzca un operador aritmético + - * / " << endl;
cin >> operador;
switch (operador)
{
case '-':
Resultado = A - B;
break;
case '+':
Resultado = A + B;
break;
case '*':
Resultado = A * B;
break;
case '/':
Resultado = (float) A / B; //Siempre que B sea diferente a cero.
break;
default:
cout << "Operador no valido" << endl;
break;
}
cout << "El resultado es: " << Resultado << endl;
return 0;
}
20 CECP/AYP/2015
Guía Básica de Algoritmos y Programación
#include <iostream>
using namespace std;
int main()
{
char car;
cout << "Introduzca una letra:" << endl;
cin >> car;
switch (car)
{
case 'a':
case 'A':
case 'e':
case 'E':
case 'i':
case 'I':
case 'o':
case 'O':
case 'u':
case 'U':
cout << "La letra " << car << " es una vocal." << endl;
break;
default:
cout << "La letra " << car << " es una consonante." << endl;
break;
}
return 0;
}
21 CECP/AYP/2015