SlideShare una empresa de Scribd logo
Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella
PROGRAMA NACIONAL DE FORMACIÓN
EN INFORMATICA (PNFI)
ALGORITMICAY PROGRAMACION
Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella
UNIDAD CURRICULAR: ALGORITMICA Y PROGRAMACION
Lenguaje de Programación C y C++
Puntos a Tratar
1. Antecedentes
2. Filosofía
3. ANSI C e ISO C
4. Breve reseña del C++
5. estructura básica de un programa en C++
6. Proceso de compilación
7. Ejercicios.
1. Antecedentes
C es un lenguaje de programación creado en 1969 por Ken Thompson y Dennis
M. Ritchie en los Laboratorios Bell como evolución del anterior lenguaje B. Al igual
que B, es un lenguaje orientado a la implementación de Sistemas Operativos,
concretamente Unix. C es apreciado por la eficiencia del código que produce y es el
lenguaje de programación más popular para crear software de sistemas, aunque también
se utiliza para crear aplicaciones.
Se trata de un lenguaje débilmente tipado de medio nivel pero con muchas
características de bajo nivel. Es necesario aclarar que un lenguaje fuertemente tipado: es
un lenguaje en el que los tipos de datos se mantienen siempre. Java y Python son
fuertemente tipados. Si se tiene un entero, no se le puede tratar como una cadena sin
convertirlo explícitamente.
Lenguaje débilmente tipado es un lenguaje en el que los tipos pueden ignorarse; lo
contrario de fuertemente tipado. VBScript es débilmente tipado. En VBScript, se puede
concatenar la cadena '12' con el entero 3 para obtener la cadena '123', y después
tratarla como el entero 123, todo ello sin conversión explícita.
2. Filosofía
Es muy posible escribir C a bajo nivel de abstracción; de hecho, C se usó como
intermediario entre diferentes lenguajes. En parte a causa de ser de relativamente bajo
Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella
nivel y de tener un conjunto de características modesto, se pueden desarrollar
compiladores de C fácilmente.
C tiene las siguientes características de importancia:
 Un núcleo del lenguaje simple, con funcionalidades añadidas importantes, como
funciones matemáticas y de manejo de ficheros, proporcionadas por bibliotecas.
 Es un lenguaje muy flexible que permite programar con múltiples estilos. Uno
de los más empleados es el estructurado.
 Un sistema de tipos que impide operaciones sin sentido.
 Usa un lenguaje de preprocesado, el preprocesador de C, para tareas como
definir macros e incluir múltiples ficheros de código fuente.
 Acceso a memoria de bajo nivel mediante el uso de punteros.
 Un conjunto reducido de palabras clave.
 Los parámetros se pasan por valor. El paso por referencia se puede simular
pasando explícitamente el valor de los punteros.
 Punteros a funciones y variables estáticas, que permiten una forma rudimentaria
de encapsulado y polimorfismo.
 Tipos de datos agregados (struct) que permiten que datos relacionados se
combinen y se manipulen como un todo.
C es más eficiente que otros lenguajes. Típicamente, sólo la programación
cuidadosa en lenguaje ensamblador produce un código más rápido, pues da control total
sobre la máquina, aunque los avances en los compiladores de C y la complejidad
creciente de los procesadores modernos han reducido gradualmente esta diferencia. En
1973, el lenguaje C se había vuelto tan potente que la mayor parte del kernel Unix,
originalmente escrito en el lenguaje ensamblador PDP11/20, fue reescrita en C. Éste fue
uno de los primeros núcleos de sistema operativo implementados en un lenguaje distinto
al ensamblador.
3. ANSI C e ISO C
A finales de la década de 1970, C empezó a sustituir a BASIC como lenguaje de
programación de microcomputadores predominante. Durante la década de 1980 se
empezó a usar en los IBM PC, lo que incrementó su popularidad significativamente. Al
mismo tiempo, Bjarne Stroustrup empezó a trabajar con algunos compañeros de Bell
Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella
Labs para añadir funcionalidades de programación orientada a objetos a C. El lenguaje
que crearon, llamado C++, es hoy en día el lenguaje de programación de aplicaciones
más común en el sistema operativo Microsoft Windows; mientras que C sigue siendo
más popular en el entorno Unix.
También se han creado numerosos lenguajes inspirados en la sintaxis de C, pero
que no son compatibles con él:
 Java, que une la sintaxis del C++ a una orientación a objetos más similar a la de
Smalltalk y Objective C.
 JavaScript, un lenguaje de scripting creado en Netscape e inspirado en la sintaxis
de Java diseñado para dar a las páginas web mayor interactividad. A la versión
estandarizada se la conoce como ECMAScript.
 C# (pronunciado C Sharp) es un lenguaje desarrollado por Microsoft derivado
de C/C++ y Java.
4. Breve Reseña de C++
En los laboratorios de AT&T Bell, que Bjarnes Stroutstrup diseñó y desarrolló
C++ buscando un lenguaje con las opciones de programación orientada a objetos. En
ese entonces el desarrollo del estándar de C++ acaparaba la atención de los diseñadores.
En el año 1995, se incluyeron algunas bibliotecas de funciones al lenguaje C. Y con
base en ellas, se pudo en 1998 definir el estándar de C++.
Es un mito pensar que entonces C++ desplazó a C, algunas soluciones a
problemas requieren de la estructura simple de C más que la de C++, C generalmente es
usado por comodidad para escribir controladores de dispositivos y para programas de
computadoras con recursos limitados.
C++ proporciona orientación a objetos, esta versión combina la flexibilidad y el
acceso de bajo nivel de C con las características de la programación orientada a objetos
como abstracción, encapsulación y ocultación. Una consideración importante es que
hasta la publicación de este estándar, C había sido mayormente un subconjunto estricto
del C++.
Era muy sencillo "actualizar" un programa de C hacia C++ y mantener ese código
compilable en ambos lenguajes. Sin embargo, el nuevo estándar agrega algunas
características que C++ no admite.
Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella
5. Estructura básica de un programa en C++
#include <iostream>
using namespace std;
Declaración de librerías
int main(void) Función main o principal
{ Llaves de apertura de la función main
cout << ”Me gusta la programación” << endl; Secuencia de Instrucciones
return 0; Valor de retorno de la función
} Llaves de cierre de la función
Análisis del código fuente
#include <iostream>
using namespace std;
La parte del #include se refiere a la biblioteca de funciones que vamos a impotar o
utilizar. Es decir para llamar a una biblioteca en particular debemos hacer lo siguiente:
#include <librería_solicitada>
El estándar de C++ incluye varias bibliotecas de funciones, y dependiendo del
compilador que se esté usando.
int main(void){
Todo programa en C++ comienza con una función main(), y sólo puede haber
una. En C++ el main() siempre regresa un entero, es por eso se antepone “int” a la
palabra “main”. Los paréntesis que le siguen contienen lo que se le va a pasar a la
función. En este caso se puso la palabra “void” que significa vacío, es decir que a la
función main no se le está mandando ningún parámetro, podría omitirse el void dentro
de los paréntesis, el compilador asume que no se enviará nada. La llave que se abre
significa que se iniciará un bloque de instrucciones.
Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella
cout<<”hola mundo”<<endl;
Esta es una instrucción. La instrucción cout está definida dentro de la biblioteca
iostream.h, que previamente declaramos que íbamos a utilizar. Una función, en este
caso main() siempre comienza su ejecución con una instrucción (la que se encuentra en
la parte superior), y continúa así hasta que se llegue a la última instrucción (de la parte
inferior). Para terminar una instrucción siempre se coloca “;”.
return 0;
Esta es otra instrucción, en este caso la instrucción return determina que es lo que
se devolverá de la función main(). Habíamos declarado que main devolvería un entero,
así que la instrucción return devuelve 0. Lo cual a su vez significa que no han ocurrido
errores durante su ejecución.
}
La llave de cierre de la función main() indica el termino del bloque de
instrucciones. En algunos programas de ejemplo, notará el uso de dobles diagonales
(“//”). Estas diagonales se usan para escribir comentarios de una línea dentro del código
del programa. Además podrá encontrar el uso de “/*” “*/” estos caracteres encierran un
comentario de varias líneas y cualquier cosa que se escriba dentro de ella no
influenciará en el desempeño del programa.
También verá que muchas veces utiliza una diagonal invertida (“”). Este signo se
utiliza cuando una instrucción ocupará varias líneas y por razones de espacio en la hoja
es mejor dividirla en partes.
6. Proceso de compilación
La compilación de un programa C o C++ se realiza en varias fases que
normalmente son automatizadas y ocultadas por los entornos de desarrollo:
1. Preprocesado consistente en modificar el código fuente en C o C++ según una serie
de instrucciones (denominadas directivas de preprocesado) simplificando de esta forma
Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella
el trabajo del compilador. Por ejemplo, una de las acciones más importantes es la
modificación de las inclusiones (#include) por las declaraciones reales existentes en el
fichero indicado.
2. Compilación que genera el código objeto a partir del código ya preprocesado.
3. Enlazado que une los códigos objeto de los distintos módulos y bibliotecas externas
(como las bibliotecas del sistema) para generar el programa ejecutable final.
Compilación de un programa escrito en C++ en plataforma Linux
g++: Programa compilador de C++
Abrir una consola o línea de comando y escribir
g++ ejercicio1.cpp o
7. Ejercicio
Escriba, compile y ejecute el siguiente programa.
#include <iostream>
using namespace std;
int main()
{
cout << ""<<endl;
cout << "Esto es un mensaje"<<endl;
cout << "Bienvenido al mundo de la programación"<<endl;
cout << ""<<endl;
return 0;
}
Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella
Actividades de estudios independientes
Analice, escriba, compile y ejecute los siguientes programas.
/*1. Programa que suma dos números enteros */
#include <iostream>
using namespace std;
/* la función main inicia la ejecución del programa */
int main()
{
int entero1; /* primer número introducido por el usuario */
int entero2; /* segundo número introducido por el usuario */
int suma; /* variable en la cual se almacena la suma */
cout >> "Introduzca el primer entero"; /* indicador */
cin << entero1; /* lee un entero */
cout >> "Introduzca el segundo entero"; /* indicador */
cin << entero2; /* lee un entero */
suma = entero1 + entero2; /* asigna el total a suma */
cout >> "La suma es ", suma ; /* imprime la suma */
return 0; /* indica que el programa terminó con éxito */
} /* fin de la función main */
Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella
/*2. En un salón hay 35 personas, el 40% son mujeres y el 60% son hombres. Desarrolle
un programa en C++ para determinar la cantidad de mujeres y la cantidad de hombres*/
#include <iostream>
using namespace std;
int main ()
{
int cantidad_personas, cantidad_mujeres, cantidad_hombres, porcentaje_hombres,
porcentaje_mujeres;
char resp;
resp = 's';
while (resp == 's')
{
cout << "Introduzca la cantidad de personas"<< endl;
cin >> cantidad_personas;
cout << "Introduzca el porcentaje de mujeres" << endl;
cin >> porcentaje_mujeres;
cout << "Introduzca el porcentaje de hombres" << endl;
cin >> porcentaje_hombres;
cantidad_mujeres = (cantidad_personas * porcentaje_mujeres) / 100;
cantidad_hombres = (cantidad_personas * porcentaje_hombres) / 100;
cout << "La Cantidad de Mujeres es:" << cantidad_mujeres << endl;
cout << "La Cantidad de Hombres es:" << cantidad_hombres << endl;
cout << "¿Desea continuar S/N?" << endl;
cin >> resp;
}
return 0;
}
Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella
// 3. Programa que indica el número mayor entre tres números
#include <iostream>
using namespace std;
int main ()
{
int a, b,c;
char respuesta;
respuesta = 'S';
while (respuesta != 'N')
{
cout << "introduzca el primer número:" << endl;
cin >> a;
cout << "introduzca el segundo numero:" << endl;
cin >> b;
cout << "introduzca el tercer numero:" << endl;
cin >> c;
if ((a>b) && (a>c)) cout << "El número mayor es el primer número" << endl;
else
if (b>a) && (b>c) cout << "el mayor es el segundo número" << endl;
else
if (a==b) && (a==c) cout "los numeros son iguales" << endl;
else cout "el mayor es el tercer numero" << endl;
cout << "¿Desea continuar: S/N?" << endl;
cin >> respuesta;
}
cout << "gracias por tu tiempo" << endl;
return 0;
}
Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella
// 4. Programa que simula una calculadora simple
#include <iostream>
using namespace std;
int main()
{
int opcion,a,b,resultado;
cout << "Ingrese un numero entero [a]: " << endl;
cin >> a;
cout << "Ingrese un numero entero [b]: " <<endl;
cin >> b;
cout <<"Menu" <<endl;
cout <<"1. Sumar" << endl;
cout << "2. Restar" << endl;
cout << "3. Dividir" << endl;
cout <<"4. Multiplicar" <<endl;
cout <<"Elija una operacion: " << endl;
cin >> opcion;
switch(opcion)
{
case 1:
resultado=a+b;
cout << "El resultado de la suma es:" <<resultado << endl;
break;
case 2:
resultado=a-b;
cout << "El resultado de la resta es:" <<resultado << endl;
break;
case 3:
resultado=a/b;
cout << "El resultado de la división es:" <<resultado << endl;
break;
Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella
case 4:
resultado=a*b;
cout << "El resultado del producto es:" <<resultado << endl;
break;
default:
cout <<"Opcion no valida" << endl;
break;
}
}

Más contenido relacionado

La actualidad más candente

Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++
Rosbelia Balza
 
Estructura de-un-programa-en-lenguaje-c.
Estructura de-un-programa-en-lenguaje-c.Estructura de-un-programa-en-lenguaje-c.
Estructura de-un-programa-en-lenguaje-c.
itzel-patricia05
 
Estructuras de un programa
Estructuras de un programaEstructuras de un programa
Estructuras de un programa
Tensor
 
ESTRUCTURA BASICA PARA C++
ESTRUCTURA BASICA PARA C++ESTRUCTURA BASICA PARA C++
ESTRUCTURA BASICA PARA C++
Idalia Tristan
 
Tutorial C
Tutorial CTutorial C
Tutorial C
Idalia Tristan
 
Funciones de entrada y salida
Funciones de entrada y salidaFunciones de entrada y salida
Funciones de entrada y salida
Margarita Zambrano
 
Estructura basica de_un_programa_c_
Estructura basica de_un_programa_c_Estructura basica de_un_programa_c_
Estructura basica de_un_programa_c_
Maztherprozh
 
Estructura basica para_c_
Estructura basica para_c_Estructura basica para_c_
Estructura basica para_c_
HUGOJAREDSANCHEZMARTINEZ
 
LENGUAJE DE PROGRAMACION C++ INTRODUCCION
LENGUAJE DE PROGRAMACION C++ INTRODUCCIONLENGUAJE DE PROGRAMACION C++ INTRODUCCION
LENGUAJE DE PROGRAMACION C++ INTRODUCCION
Sol López
 
Lenguaje c 1
Lenguaje c   1Lenguaje c   1
Lenguaje c 1
Denisse C
 
Tutorial C
Tutorial CTutorial C
Tutorial C
Idalia Tristan
 
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguajeLenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Dunkherz
 
Lenguajec diapositivas
Lenguajec diapositivasLenguajec diapositivas
Lenguajec diapositivas
tacubomx
 
Repaso del lenguaje C++
Repaso del lenguaje C++Repaso del lenguaje C++
Repaso del lenguaje C++
g_torrealba
 
Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2
camnav
 
Precentacion
PrecentacionPrecentacion
Precentacion
MaryferGaitan
 
C++
C++C++
Estructura de un rograma
Estructura de un rogramaEstructura de un rograma
Estructura de un rograma
ivanjvic
 

La actualidad más candente (18)

Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++
 
Estructura de-un-programa-en-lenguaje-c.
Estructura de-un-programa-en-lenguaje-c.Estructura de-un-programa-en-lenguaje-c.
Estructura de-un-programa-en-lenguaje-c.
 
Estructuras de un programa
Estructuras de un programaEstructuras de un programa
Estructuras de un programa
 
ESTRUCTURA BASICA PARA C++
ESTRUCTURA BASICA PARA C++ESTRUCTURA BASICA PARA C++
ESTRUCTURA BASICA PARA C++
 
Tutorial C
Tutorial CTutorial C
Tutorial C
 
Funciones de entrada y salida
Funciones de entrada y salidaFunciones de entrada y salida
Funciones de entrada y salida
 
Estructura basica de_un_programa_c_
Estructura basica de_un_programa_c_Estructura basica de_un_programa_c_
Estructura basica de_un_programa_c_
 
Estructura basica para_c_
Estructura basica para_c_Estructura basica para_c_
Estructura basica para_c_
 
LENGUAJE DE PROGRAMACION C++ INTRODUCCION
LENGUAJE DE PROGRAMACION C++ INTRODUCCIONLENGUAJE DE PROGRAMACION C++ INTRODUCCION
LENGUAJE DE PROGRAMACION C++ INTRODUCCION
 
Lenguaje c 1
Lenguaje c   1Lenguaje c   1
Lenguaje c 1
 
Tutorial C
Tutorial CTutorial C
Tutorial C
 
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguajeLenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
 
Lenguajec diapositivas
Lenguajec diapositivasLenguajec diapositivas
Lenguajec diapositivas
 
Repaso del lenguaje C++
Repaso del lenguaje C++Repaso del lenguaje C++
Repaso del lenguaje C++
 
Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2Lenguajesdeprogramacion c nivel1-unidad2
Lenguajesdeprogramacion c nivel1-unidad2
 
Precentacion
PrecentacionPrecentacion
Precentacion
 
C++
C++C++
C++
 
Estructura de un rograma
Estructura de un rogramaEstructura de un rograma
Estructura de un rograma
 

Similar a Unidad 5 Lenguaje de Programacion C y C++

Unidad 3
Unidad 3Unidad 3
Unidad 3
Karly Lugo
 
Curso de c antonio lebron bocanegra
Curso de c   antonio lebron bocanegraCurso de c   antonio lebron bocanegra
Curso de c antonio lebron bocanegra
victdiazm
 
C#
C#C#
Lenguaje c1
Lenguaje c1Lenguaje c1
Lenguaje c1
Javier Paris
 
Lenguaje c
Lenguaje cLenguaje c
Pul123
Pul123Pul123
Pul123
Paul-Vargas
 
C# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptualC# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptual
Fernando Jose
 
Progra.jpg
Progra.jpgProgra.jpg
Progra.jpg
Manzana roja
 
ENSAYO SOBRE EL LENGUAJE C
ENSAYO SOBRE EL LENGUAJE C ENSAYO SOBRE EL LENGUAJE C
ENSAYO SOBRE EL LENGUAJE C
Maria gabriela Castillo
 
Lenguaje c++
Lenguaje c++Lenguaje c++
Lenguaje c++
sandra gutierrez
 
1. introducción a c#
1.  introducción a c#1.  introducción a c#
1. introducción a c#
Melissa Valadez
 
7 lenguaje c
7 lenguaje c7 lenguaje c
7 lenguaje c
Paulo Guerra Terán
 
Caract
CaractCaract
Lenguaje c completo 6 g x revisar x los estudiantes
Lenguaje c completo 6 g x revisar x los estudiantesLenguaje c completo 6 g x revisar x los estudiantes
Lenguaje c completo 6 g x revisar x los estudiantes
Jhon Jairo C Q
 
Programa en lenguaje C, Hildemaro Sequera, MI-42
Programa en lenguaje C, Hildemaro Sequera, MI-42Programa en lenguaje C, Hildemaro Sequera, MI-42
Programa en lenguaje C, Hildemaro Sequera, MI-42
Hildemaro Sequera
 
Consulta c++
Consulta c++Consulta c++
Consulta c++
elianaconstanza
 
Lenguaje c.Luis Carrodeguas.16418180
Lenguaje c.Luis Carrodeguas.16418180Lenguaje c.Luis Carrodeguas.16418180
Lenguaje c.Luis Carrodeguas.16418180
Luiscarrodeguas
 
Introduccion al lenguaje c
Introduccion al lenguaje cIntroduccion al lenguaje c
Introduccion al lenguaje c
victdiazm
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
Cintya Dannaye
 
Unidad 3
Unidad 3Unidad 3

Similar a Unidad 5 Lenguaje de Programacion C y C++ (20)

Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Curso de c antonio lebron bocanegra
Curso de c   antonio lebron bocanegraCurso de c   antonio lebron bocanegra
Curso de c antonio lebron bocanegra
 
C#
C#C#
C#
 
Lenguaje c1
Lenguaje c1Lenguaje c1
Lenguaje c1
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 
Pul123
Pul123Pul123
Pul123
 
C# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptualC# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptual
 
Progra.jpg
Progra.jpgProgra.jpg
Progra.jpg
 
ENSAYO SOBRE EL LENGUAJE C
ENSAYO SOBRE EL LENGUAJE C ENSAYO SOBRE EL LENGUAJE C
ENSAYO SOBRE EL LENGUAJE C
 
Lenguaje c++
Lenguaje c++Lenguaje c++
Lenguaje c++
 
1. introducción a c#
1.  introducción a c#1.  introducción a c#
1. introducción a c#
 
7 lenguaje c
7 lenguaje c7 lenguaje c
7 lenguaje c
 
Caract
CaractCaract
Caract
 
Lenguaje c completo 6 g x revisar x los estudiantes
Lenguaje c completo 6 g x revisar x los estudiantesLenguaje c completo 6 g x revisar x los estudiantes
Lenguaje c completo 6 g x revisar x los estudiantes
 
Programa en lenguaje C, Hildemaro Sequera, MI-42
Programa en lenguaje C, Hildemaro Sequera, MI-42Programa en lenguaje C, Hildemaro Sequera, MI-42
Programa en lenguaje C, Hildemaro Sequera, MI-42
 
Consulta c++
Consulta c++Consulta c++
Consulta c++
 
Lenguaje c.Luis Carrodeguas.16418180
Lenguaje c.Luis Carrodeguas.16418180Lenguaje c.Luis Carrodeguas.16418180
Lenguaje c.Luis Carrodeguas.16418180
 
Introduccion al lenguaje c
Introduccion al lenguaje cIntroduccion al lenguaje c
Introduccion al lenguaje c
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 

Más de Leany González

Plan evaluacionvirtual fase ii-2021- leany gonzález
Plan evaluacionvirtual fase ii-2021- leany gonzálezPlan evaluacionvirtual fase ii-2021- leany gonzález
Plan evaluacionvirtual fase ii-2021- leany gonzález
Leany González
 
De algoritmo a_c++
De algoritmo a_c++De algoritmo a_c++
De algoritmo a_c++
Leany González
 
Guía didáctica estructura secuenciales
Guía didáctica estructura secuencialesGuía didáctica estructura secuenciales
Guía didáctica estructura secuenciales
Leany González
 
Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...
Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...
Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...
Leany González
 
Pnfi programa analitico algoritmica y programacion
Pnfi   programa analitico algoritmica y programacionPnfi   programa analitico algoritmica y programacion
Pnfi programa analitico algoritmica y programacion
Leany González
 
Plan evaluacion algoritmica y programacion lapso i 2021
Plan evaluacion algoritmica y programacion  lapso i 2021Plan evaluacion algoritmica y programacion  lapso i 2021
Plan evaluacion algoritmica y programacion lapso i 2021
Leany González
 
Material de apoyo unidad 3. datos y entidades primitivas
Material de apoyo unidad 3.  datos y entidades primitivasMaterial de apoyo unidad 3.  datos y entidades primitivas
Material de apoyo unidad 3. datos y entidades primitivas
Leany González
 
Material de apoyo unidad 2. estandares en el diseño de algoritmos
Material de apoyo unidad 2. estandares en el diseño de algoritmosMaterial de apoyo unidad 2. estandares en el diseño de algoritmos
Material de apoyo unidad 2. estandares en el diseño de algoritmos
Leany González
 
Material de apoyo de unidad 1. algoritmos y programas
Material de apoyo de unidad 1. algoritmos y programasMaterial de apoyo de unidad 1. algoritmos y programas
Material de apoyo de unidad 1. algoritmos y programas
Leany González
 
Plan evaluacion idiomas i lapso i 2021
Plan evaluacion idiomas i lapso i 2021Plan evaluacion idiomas i lapso i 2021
Plan evaluacion idiomas i lapso i 2021
Leany González
 
Lineamientos internos ultima revision
Lineamientos internos ultima revisionLineamientos internos ultima revision
Lineamientos internos ultima revision
Leany González
 

Más de Leany González (11)

Plan evaluacionvirtual fase ii-2021- leany gonzález
Plan evaluacionvirtual fase ii-2021- leany gonzálezPlan evaluacionvirtual fase ii-2021- leany gonzález
Plan evaluacionvirtual fase ii-2021- leany gonzález
 
De algoritmo a_c++
De algoritmo a_c++De algoritmo a_c++
De algoritmo a_c++
 
Guía didáctica estructura secuenciales
Guía didáctica estructura secuencialesGuía didáctica estructura secuenciales
Guía didáctica estructura secuenciales
 
Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...
Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...
Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...
 
Pnfi programa analitico algoritmica y programacion
Pnfi   programa analitico algoritmica y programacionPnfi   programa analitico algoritmica y programacion
Pnfi programa analitico algoritmica y programacion
 
Plan evaluacion algoritmica y programacion lapso i 2021
Plan evaluacion algoritmica y programacion  lapso i 2021Plan evaluacion algoritmica y programacion  lapso i 2021
Plan evaluacion algoritmica y programacion lapso i 2021
 
Material de apoyo unidad 3. datos y entidades primitivas
Material de apoyo unidad 3.  datos y entidades primitivasMaterial de apoyo unidad 3.  datos y entidades primitivas
Material de apoyo unidad 3. datos y entidades primitivas
 
Material de apoyo unidad 2. estandares en el diseño de algoritmos
Material de apoyo unidad 2. estandares en el diseño de algoritmosMaterial de apoyo unidad 2. estandares en el diseño de algoritmos
Material de apoyo unidad 2. estandares en el diseño de algoritmos
 
Material de apoyo de unidad 1. algoritmos y programas
Material de apoyo de unidad 1. algoritmos y programasMaterial de apoyo de unidad 1. algoritmos y programas
Material de apoyo de unidad 1. algoritmos y programas
 
Plan evaluacion idiomas i lapso i 2021
Plan evaluacion idiomas i lapso i 2021Plan evaluacion idiomas i lapso i 2021
Plan evaluacion idiomas i lapso i 2021
 
Lineamientos internos ultima revision
Lineamientos internos ultima revisionLineamientos internos ultima revision
Lineamientos internos ultima revision
 

Último

LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJELA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
jecgjv
 
Docentes y el uso de chatGPT en el Aula Ccesa007.pdf
Docentes y el uso de chatGPT   en el Aula Ccesa007.pdfDocentes y el uso de chatGPT   en el Aula Ccesa007.pdf
Docentes y el uso de chatGPT en el Aula Ccesa007.pdf
Demetrio Ccesa Rayme
 
3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
rosannatasaycoyactay
 
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptxNuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
lautyzaracho4
 
El ensayo mexicano en el siglo XX LITERATURA
El ensayo mexicano en el siglo XX LITERATURAEl ensayo mexicano en el siglo XX LITERATURA
El ensayo mexicano en el siglo XX LITERATURA
Armando920824
 
Examen de la EvAU 2024 en Navarra Latín.
Examen de la EvAU 2024 en Navarra Latín.Examen de la EvAU 2024 en Navarra Latín.
Examen de la EvAU 2024 en Navarra Latín.
amayaltc18
 
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIACONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
ginnazamudio
 
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI UNESCO Ccesa007.pdf
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI  UNESCO Ccesa007.pdfLas Tecnologias Digitales en los Aprendizajesdel Siglo XXI  UNESCO Ccesa007.pdf
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI UNESCO Ccesa007.pdf
Demetrio Ccesa Rayme
 
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdfBlogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
lautyzaracho4
 
Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024
israelsouza67
 
pueblos originarios de chile presentacion twinkl.pptx
pueblos originarios de chile presentacion twinkl.pptxpueblos originarios de chile presentacion twinkl.pptx
pueblos originarios de chile presentacion twinkl.pptx
RAMIREZNICOLE
 
Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1
MauricioSnchez83
 
Planificación Ejemplo con la metodología TPACK
Planificación Ejemplo con la metodología  TPACKPlanificación Ejemplo con la metodología  TPACK
Planificación Ejemplo con la metodología TPACK
ssusera6697f
 
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptxSEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
Osiris Urbano
 
Las diversas Sociedades Mercantiles Mexico.pdf
Las diversas Sociedades Mercantiles Mexico.pdfLas diversas Sociedades Mercantiles Mexico.pdf
Las diversas Sociedades Mercantiles Mexico.pdf
La Paradoja educativa
 
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
JAVIER SOLIS NOYOLA
 
el pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdfel pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdf
almitamtz00
 
Dia de la Bandera colegio Santa Angela 2024
Dia de la Bandera colegio Santa Angela 2024Dia de la Bandera colegio Santa Angela 2024
Dia de la Bandera colegio Santa Angela 2024
77361565
 
Sesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdfSesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdf
https://gramadal.wordpress.com/
 
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdfMundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
ViriEsteva
 

Último (20)

LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJELA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJE
 
Docentes y el uso de chatGPT en el Aula Ccesa007.pdf
Docentes y el uso de chatGPT   en el Aula Ccesa007.pdfDocentes y el uso de chatGPT   en el Aula Ccesa007.pdf
Docentes y el uso de chatGPT en el Aula Ccesa007.pdf
 
3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx3° SES COMU LUN10  CUENTO DIA DEL PADRE  933623393 PROF YESSENIA (1).docx
3° SES COMU LUN10 CUENTO DIA DEL PADRE 933623393 PROF YESSENIA (1).docx
 
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptxNuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
 
El ensayo mexicano en el siglo XX LITERATURA
El ensayo mexicano en el siglo XX LITERATURAEl ensayo mexicano en el siglo XX LITERATURA
El ensayo mexicano en el siglo XX LITERATURA
 
Examen de la EvAU 2024 en Navarra Latín.
Examen de la EvAU 2024 en Navarra Latín.Examen de la EvAU 2024 en Navarra Latín.
Examen de la EvAU 2024 en Navarra Latín.
 
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIACONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
 
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI UNESCO Ccesa007.pdf
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI  UNESCO Ccesa007.pdfLas Tecnologias Digitales en los Aprendizajesdel Siglo XXI  UNESCO Ccesa007.pdf
Las Tecnologias Digitales en los Aprendizajesdel Siglo XXI UNESCO Ccesa007.pdf
 
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdfBlogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
 
Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024
 
pueblos originarios de chile presentacion twinkl.pptx
pueblos originarios de chile presentacion twinkl.pptxpueblos originarios de chile presentacion twinkl.pptx
pueblos originarios de chile presentacion twinkl.pptx
 
Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1
 
Planificación Ejemplo con la metodología TPACK
Planificación Ejemplo con la metodología  TPACKPlanificación Ejemplo con la metodología  TPACK
Planificación Ejemplo con la metodología TPACK
 
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptxSEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
SEMIOLOGIA DE HEMORRAGIAS DIGESTIVAS.pptx
 
Las diversas Sociedades Mercantiles Mexico.pdf
Las diversas Sociedades Mercantiles Mexico.pdfLas diversas Sociedades Mercantiles Mexico.pdf
Las diversas Sociedades Mercantiles Mexico.pdf
 
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
 
el pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdfel pensamiento critico de paulo freire en basica .pdf
el pensamiento critico de paulo freire en basica .pdf
 
Dia de la Bandera colegio Santa Angela 2024
Dia de la Bandera colegio Santa Angela 2024Dia de la Bandera colegio Santa Angela 2024
Dia de la Bandera colegio Santa Angela 2024
 
Sesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdfSesión: El espiritismo desenmascarado.pdf
Sesión: El espiritismo desenmascarado.pdf
 
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdfMundo ABC Examen 1 Grado- Tercer Trimestre.pdf
Mundo ABC Examen 1 Grado- Tercer Trimestre.pdf
 

Unidad 5 Lenguaje de Programacion C y C++

  • 1. Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella PROGRAMA NACIONAL DE FORMACIÓN EN INFORMATICA (PNFI) ALGORITMICAY PROGRAMACION
  • 2. Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella UNIDAD CURRICULAR: ALGORITMICA Y PROGRAMACION Lenguaje de Programación C y C++ Puntos a Tratar 1. Antecedentes 2. Filosofía 3. ANSI C e ISO C 4. Breve reseña del C++ 5. estructura básica de un programa en C++ 6. Proceso de compilación 7. Ejercicios. 1. Antecedentes C es un lenguaje de programación creado en 1969 por Ken Thompson y Dennis M. Ritchie en los Laboratorios Bell como evolución del anterior lenguaje B. Al igual que B, es un lenguaje orientado a la implementación de Sistemas Operativos, concretamente Unix. C es apreciado por la eficiencia del código que produce y es el lenguaje de programación más popular para crear software de sistemas, aunque también se utiliza para crear aplicaciones. Se trata de un lenguaje débilmente tipado de medio nivel pero con muchas características de bajo nivel. Es necesario aclarar que un lenguaje fuertemente tipado: es un lenguaje en el que los tipos de datos se mantienen siempre. Java y Python son fuertemente tipados. Si se tiene un entero, no se le puede tratar como una cadena sin convertirlo explícitamente. Lenguaje débilmente tipado es un lenguaje en el que los tipos pueden ignorarse; lo contrario de fuertemente tipado. VBScript es débilmente tipado. En VBScript, se puede concatenar la cadena '12' con el entero 3 para obtener la cadena '123', y después tratarla como el entero 123, todo ello sin conversión explícita. 2. Filosofía Es muy posible escribir C a bajo nivel de abstracción; de hecho, C se usó como intermediario entre diferentes lenguajes. En parte a causa de ser de relativamente bajo
  • 3. Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella nivel y de tener un conjunto de características modesto, se pueden desarrollar compiladores de C fácilmente. C tiene las siguientes características de importancia:  Un núcleo del lenguaje simple, con funcionalidades añadidas importantes, como funciones matemáticas y de manejo de ficheros, proporcionadas por bibliotecas.  Es un lenguaje muy flexible que permite programar con múltiples estilos. Uno de los más empleados es el estructurado.  Un sistema de tipos que impide operaciones sin sentido.  Usa un lenguaje de preprocesado, el preprocesador de C, para tareas como definir macros e incluir múltiples ficheros de código fuente.  Acceso a memoria de bajo nivel mediante el uso de punteros.  Un conjunto reducido de palabras clave.  Los parámetros se pasan por valor. El paso por referencia se puede simular pasando explícitamente el valor de los punteros.  Punteros a funciones y variables estáticas, que permiten una forma rudimentaria de encapsulado y polimorfismo.  Tipos de datos agregados (struct) que permiten que datos relacionados se combinen y se manipulen como un todo. C es más eficiente que otros lenguajes. Típicamente, sólo la programación cuidadosa en lenguaje ensamblador produce un código más rápido, pues da control total sobre la máquina, aunque los avances en los compiladores de C y la complejidad creciente de los procesadores modernos han reducido gradualmente esta diferencia. En 1973, el lenguaje C se había vuelto tan potente que la mayor parte del kernel Unix, originalmente escrito en el lenguaje ensamblador PDP11/20, fue reescrita en C. Éste fue uno de los primeros núcleos de sistema operativo implementados en un lenguaje distinto al ensamblador. 3. ANSI C e ISO C A finales de la década de 1970, C empezó a sustituir a BASIC como lenguaje de programación de microcomputadores predominante. Durante la década de 1980 se empezó a usar en los IBM PC, lo que incrementó su popularidad significativamente. Al mismo tiempo, Bjarne Stroustrup empezó a trabajar con algunos compañeros de Bell
  • 4. Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella Labs para añadir funcionalidades de programación orientada a objetos a C. El lenguaje que crearon, llamado C++, es hoy en día el lenguaje de programación de aplicaciones más común en el sistema operativo Microsoft Windows; mientras que C sigue siendo más popular en el entorno Unix. También se han creado numerosos lenguajes inspirados en la sintaxis de C, pero que no son compatibles con él:  Java, que une la sintaxis del C++ a una orientación a objetos más similar a la de Smalltalk y Objective C.  JavaScript, un lenguaje de scripting creado en Netscape e inspirado en la sintaxis de Java diseñado para dar a las páginas web mayor interactividad. A la versión estandarizada se la conoce como ECMAScript.  C# (pronunciado C Sharp) es un lenguaje desarrollado por Microsoft derivado de C/C++ y Java. 4. Breve Reseña de C++ En los laboratorios de AT&T Bell, que Bjarnes Stroutstrup diseñó y desarrolló C++ buscando un lenguaje con las opciones de programación orientada a objetos. En ese entonces el desarrollo del estándar de C++ acaparaba la atención de los diseñadores. En el año 1995, se incluyeron algunas bibliotecas de funciones al lenguaje C. Y con base en ellas, se pudo en 1998 definir el estándar de C++. Es un mito pensar que entonces C++ desplazó a C, algunas soluciones a problemas requieren de la estructura simple de C más que la de C++, C generalmente es usado por comodidad para escribir controladores de dispositivos y para programas de computadoras con recursos limitados. C++ proporciona orientación a objetos, esta versión combina la flexibilidad y el acceso de bajo nivel de C con las características de la programación orientada a objetos como abstracción, encapsulación y ocultación. Una consideración importante es que hasta la publicación de este estándar, C había sido mayormente un subconjunto estricto del C++. Era muy sencillo "actualizar" un programa de C hacia C++ y mantener ese código compilable en ambos lenguajes. Sin embargo, el nuevo estándar agrega algunas características que C++ no admite.
  • 5. Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella 5. Estructura básica de un programa en C++ #include <iostream> using namespace std; Declaración de librerías int main(void) Función main o principal { Llaves de apertura de la función main cout << ”Me gusta la programación” << endl; Secuencia de Instrucciones return 0; Valor de retorno de la función } Llaves de cierre de la función Análisis del código fuente #include <iostream> using namespace std; La parte del #include se refiere a la biblioteca de funciones que vamos a impotar o utilizar. Es decir para llamar a una biblioteca en particular debemos hacer lo siguiente: #include <librería_solicitada> El estándar de C++ incluye varias bibliotecas de funciones, y dependiendo del compilador que se esté usando. int main(void){ Todo programa en C++ comienza con una función main(), y sólo puede haber una. En C++ el main() siempre regresa un entero, es por eso se antepone “int” a la palabra “main”. Los paréntesis que le siguen contienen lo que se le va a pasar a la función. En este caso se puso la palabra “void” que significa vacío, es decir que a la función main no se le está mandando ningún parámetro, podría omitirse el void dentro de los paréntesis, el compilador asume que no se enviará nada. La llave que se abre significa que se iniciará un bloque de instrucciones.
  • 6. Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella cout<<”hola mundo”<<endl; Esta es una instrucción. La instrucción cout está definida dentro de la biblioteca iostream.h, que previamente declaramos que íbamos a utilizar. Una función, en este caso main() siempre comienza su ejecución con una instrucción (la que se encuentra en la parte superior), y continúa así hasta que se llegue a la última instrucción (de la parte inferior). Para terminar una instrucción siempre se coloca “;”. return 0; Esta es otra instrucción, en este caso la instrucción return determina que es lo que se devolverá de la función main(). Habíamos declarado que main devolvería un entero, así que la instrucción return devuelve 0. Lo cual a su vez significa que no han ocurrido errores durante su ejecución. } La llave de cierre de la función main() indica el termino del bloque de instrucciones. En algunos programas de ejemplo, notará el uso de dobles diagonales (“//”). Estas diagonales se usan para escribir comentarios de una línea dentro del código del programa. Además podrá encontrar el uso de “/*” “*/” estos caracteres encierran un comentario de varias líneas y cualquier cosa que se escriba dentro de ella no influenciará en el desempeño del programa. También verá que muchas veces utiliza una diagonal invertida (“”). Este signo se utiliza cuando una instrucción ocupará varias líneas y por razones de espacio en la hoja es mejor dividirla en partes. 6. Proceso de compilación La compilación de un programa C o C++ se realiza en varias fases que normalmente son automatizadas y ocultadas por los entornos de desarrollo: 1. Preprocesado consistente en modificar el código fuente en C o C++ según una serie de instrucciones (denominadas directivas de preprocesado) simplificando de esta forma
  • 7. Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella el trabajo del compilador. Por ejemplo, una de las acciones más importantes es la modificación de las inclusiones (#include) por las declaraciones reales existentes en el fichero indicado. 2. Compilación que genera el código objeto a partir del código ya preprocesado. 3. Enlazado que une los códigos objeto de los distintos módulos y bibliotecas externas (como las bibliotecas del sistema) para generar el programa ejecutable final. Compilación de un programa escrito en C++ en plataforma Linux g++: Programa compilador de C++ Abrir una consola o línea de comando y escribir g++ ejercicio1.cpp o 7. Ejercicio Escriba, compile y ejecute el siguiente programa. #include <iostream> using namespace std; int main() { cout << ""<<endl; cout << "Esto es un mensaje"<<endl; cout << "Bienvenido al mundo de la programación"<<endl; cout << ""<<endl; return 0; }
  • 8. Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella Actividades de estudios independientes Analice, escriba, compile y ejecute los siguientes programas. /*1. Programa que suma dos números enteros */ #include <iostream> using namespace std; /* la función main inicia la ejecución del programa */ int main() { int entero1; /* primer número introducido por el usuario */ int entero2; /* segundo número introducido por el usuario */ int suma; /* variable en la cual se almacena la suma */ cout >> "Introduzca el primer entero"; /* indicador */ cin << entero1; /* lee un entero */ cout >> "Introduzca el segundo entero"; /* indicador */ cin << entero2; /* lee un entero */ suma = entero1 + entero2; /* asigna el total a suma */ cout >> "La suma es ", suma ; /* imprime la suma */ return 0; /* indica que el programa terminó con éxito */ } /* fin de la función main */
  • 9. Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella /*2. En un salón hay 35 personas, el 40% son mujeres y el 60% son hombres. Desarrolle un programa en C++ para determinar la cantidad de mujeres y la cantidad de hombres*/ #include <iostream> using namespace std; int main () { int cantidad_personas, cantidad_mujeres, cantidad_hombres, porcentaje_hombres, porcentaje_mujeres; char resp; resp = 's'; while (resp == 's') { cout << "Introduzca la cantidad de personas"<< endl; cin >> cantidad_personas; cout << "Introduzca el porcentaje de mujeres" << endl; cin >> porcentaje_mujeres; cout << "Introduzca el porcentaje de hombres" << endl; cin >> porcentaje_hombres; cantidad_mujeres = (cantidad_personas * porcentaje_mujeres) / 100; cantidad_hombres = (cantidad_personas * porcentaje_hombres) / 100; cout << "La Cantidad de Mujeres es:" << cantidad_mujeres << endl; cout << "La Cantidad de Hombres es:" << cantidad_hombres << endl; cout << "¿Desea continuar S/N?" << endl; cin >> resp; } return 0; }
  • 10. Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella // 3. Programa que indica el número mayor entre tres números #include <iostream> using namespace std; int main () { int a, b,c; char respuesta; respuesta = 'S'; while (respuesta != 'N') { cout << "introduzca el primer número:" << endl; cin >> a; cout << "introduzca el segundo numero:" << endl; cin >> b; cout << "introduzca el tercer numero:" << endl; cin >> c; if ((a>b) && (a>c)) cout << "El número mayor es el primer número" << endl; else if (b>a) && (b>c) cout << "el mayor es el segundo número" << endl; else if (a==b) && (a==c) cout "los numeros son iguales" << endl; else cout "el mayor es el tercer numero" << endl; cout << "¿Desea continuar: S/N?" << endl; cin >> respuesta; } cout << "gracias por tu tiempo" << endl; return 0; }
  • 11. Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella // 4. Programa que simula una calculadora simple #include <iostream> using namespace std; int main() { int opcion,a,b,resultado; cout << "Ingrese un numero entero [a]: " << endl; cin >> a; cout << "Ingrese un numero entero [b]: " <<endl; cin >> b; cout <<"Menu" <<endl; cout <<"1. Sumar" << endl; cout << "2. Restar" << endl; cout << "3. Dividir" << endl; cout <<"4. Multiplicar" <<endl; cout <<"Elija una operacion: " << endl; cin >> opcion; switch(opcion) { case 1: resultado=a+b; cout << "El resultado de la suma es:" <<resultado << endl; break; case 2: resultado=a-b; cout << "El resultado de la resta es:" <<resultado << endl; break; case 3: resultado=a/b; cout << "El resultado de la división es:" <<resultado << endl; break;
  • 12. Algorítmica y Programación Unidad 5. Ejercicios Estructuras de Control Ing. Sullin Santaella case 4: resultado=a*b; cout << "El resultado del producto es:" <<resultado << endl; break; default: cout <<"Opcion no valida" << endl; break; } }