Elementos-Básicos-Lenguaje-Programación

download Elementos-Básicos-Lenguaje-Programación

of 67

Transcript of Elementos-Básicos-Lenguaje-Programación

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    1/67

    UNIDAD DIDCTICA

    Elementos bsicos del Lenguajede Programacin

    Prof. Margarita Pereira

    Barquisimeto, Marzo 2010

    UUNNIIVVEERRSSIIDDAADD CCEENNTTRROOCCCCIIDDEENNTTAALL

    LLIISSAANNDDRROO AALLVVAARRAADDOOSSIISSTTEEMMAA DDEE EEDDUUCCAACCIINN AA DDIISSTTAANNCCIIAA

    DDEECCAANNAATTOO DDEE CCIIEENNCCIIAASS YY TTEECCNNOOLLOOGGAA

    142

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    2/67

    UNIDAD DIDCTICA

    Programacin

    UUNNIIVVEERRSSIIDDAADD CCEENNTTRROOCCCCIIDDEENNTTAALLLLIISSAANNDDRROO AALLVVAARRAADDOO

    SS

    IISS

    TT

    EE

    MM

    AA

    DD

    EE

    EE

    DD

    UU

    CC

    AA

    CC

    II

    NN

    AA

    DD

    IISS

    TT

    AA

    NN

    CC

    IIAA

    DDEECCAANNAATTOO DDEE CCIIEENNCCIIAASS YY TTEECCNNOOLLOOGGAA

    Elaborado por: Prof. Margarita PereiraCorreo-e: [email protected] Elaboracin: Septiembre 2008

    Revisado y actualizado por:Prof. Margarita PereiraFecha Ultima Revisin: Marzo 2010

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    3/67

    Unidad didctica. Elementos bsicos del lenguaje 3

    Prof. Margarita Pereira

    Tabla de Contenidos

    Pg.

    Introduccin. . 5

    Objetivos de Aprendizaje.. 6

    Contenidos Programticos de la Unidad 6

    1. Lenguaje de Programacin...1.1.Definicin.........1.2.Tipos de Lenguajes...1.3.Lenguaje C++...1.4.Definicin de sintaxis...1.5.Pasos para realizar un programa en un lenguaje de programacin...

    2. Estructura bsica de un programa en C++...2.1.Definiciones y/o Declaraciones

    2.1.1. Directivas del Preprocesador.2.1.2. Declaraciones globales...

    2.2.Funcin main2.3.Implementacin de las funciones definidas por el usuario...

    3. Elementos de un programa en C++..3.1.Conjunto de caracteres..3.2.Palabras reservadas...3.3.Identificadores...3.4.Comentarios...3.5.Archivos de Cabecera........

    4. Datos4.1.Definicin.4.2.Tipos de datos...

    6

    6

    6

    7

    8

    9

    10

    11

    11

    12

    13

    14

    15

    15

    16

    16

    16

    17

    17

    17

    17

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    4/67

    Unidad didctica. Elementos bsicos del lenguaje 4

    Prof. Margarita Pereira

    4.3.Constantes.4.4.Variables...

    5. Instruccin de asignacin.6. Instruccin de entrada y salida.7. Proceso de creacin de un programa ejecutable..8. Operadores, Operandos y Expresiones

    8.1.Operador de Asignacin...8.2.Operadores unarios (menos unario, sizeof(), coma).8.3.Operadores aritmticos.8.4.Operadores de Incremento y Decremento.8.5.Operadores relacionales8.6.Operadores lgicos8.7.Prioridad de los operadores...

    9. Pruebas y depuracin de programas.10.Documentacin de Programas.11.Ejercicios Propuestos...

    19

    19

    22

    22

    26

    26

    26

    33

    3436

    40

    41

    42

    42

    42

    43

    Resumen.

    Autoevaluacin...

    Respuesta a la Autoevaluacin.

    Complemento. Ejercicios Propuestos.

    Instructivo para la Instalacin del Compilador DevCpp

    43

    47

    49

    52

    54

    Fuentes de Informacin.. 67

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    5/67

    Unidad didctica. Elementos bsicos del lenguaje 5

    Prof. Margarita Pereira

    Introduccin

    La programacin nace por la necesidad de elaborar programas de computacin quepermitan resolver problemas de diversas reas de la vida como la social, econmica,acadmica, poltica, cultural, entre otras. Estos programas de computacin deben ser llevadosal computador para poder ver su aplicabilidad. Hasta este momento los programas se hanescrito como un algoritmo (secuencia de pasos, instrucciones) haciendo uso de un

    pseudocdigo.Las computadoras funcionan bien, si tienen programas escritos en algn lenguaje que ellas

    puedan interpretar (por supuesto programas lgicos y correctos). Esta es la razn por la queaparecen los lenguajes de programacin.

    Esta unidad didctica pretende que comprendas para que sirven los lenguajes deprogramacin, as como los pasos que debes seguir para poder utilizarlos. En particular, sedetalla el lenguaje de programacin C++, usando el compilador Devcpp que trabaja bajo laplataforma de Windows. Entre otras cosas se especifican la sintaxis para las instruccionesbsicas, los datos y sus tipos as como los diversos operadores de que dispone el lenguaje.

    El objetivo central, no es que memorices los conceptos planteados en este material, sinoque los lleves a la prctica desarrollando programas y verificando que producen los resultadosesperados (correctos), es por ello que se muestran algunos ejemplos sencillos y se dejarnotros propuestos para que los resuelvas.

    Puedes imaginarte esta unidad como un mapa que te indicar las rutas que debes seguirpara lograr los objetivos de tu aprendizaje con relacin al tema Elementos bsicos delLenguaje y con ella podrs desarrollar:

    Procesos de reflexin, crtica, duda, cuestionamiento e investigacin lo cual te ayudara construir tus conocimientos.

    Un dilogo permanente con el saber, con tu facilitador (profesor) y en general con larealidad que te rodea

    Respuestas sobre el qu?, cmo?, cundo? a fin de mejorar el aprovechamiento deltiempo disponible y maximizar el aprendizaje y su aplicacin.

    Te recuerdo que tu eres el protagonista central en esta historia, as que no tengas miedo,siempre contaras con mi apoyo, no estas slo, somos un equipo (t, tu profesor y tuscompaeros) debemos colaborar unos con otros y as todos lograremos el objetivo que es

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    6/67

    Unidad didctica. Elementos bsicos del lenguaje 6

    Prof. Margarita Pereira

    lograr el aprendizaje sobre este tema. As que nimo y a comenzar con el tema Elementosbsicos del Lenguaje de Programacin.

    .

    Objetivos de Aprendizaje

    Objetivo Terminal

    Al finalizar este tema podrs IMPLEMENTAR programas sencillos en lenguaje C++,aplicando los elementos bsicos del lenguaje.

    Objetivos Especficos Identificar los componentes esenciales de la estructura de un programa de computacin. Identificar el proceso de edicin y compilacin para la creacin de programas ejecutables. Reconocer el trmino datos como elemento fundamental en la creacin de un programa de

    computacin.

    Diferenciar los diferentes tipos de datos y su aplicacin. Utilizar los archivos de cabecera. Utilizar los diferentes operadores, operandos y expresiones en el desarrollo de un programa de

    computacin.

    Utilizar instrucciones de asignacin. Utilizar instrucciones que permitan realizar operaciones de entrada/salida. Realizar pruebas efectivas para la produccin de programas confiables y de mejor calidad. Elaborar programas documentados con el fin de mejorar el mantenimiento de los mismos. Utilizar la herramienta de programacin DevCpp. Asumir responsabilidades individuales y aprender a trabajar en equipo.

    Contenidos Programticos (Proceso de Aprendizaje)

    Elementos bsicos del lenguaje de Programacin

    1. Lenguaje de Programacin1.1.Definicin: Es una serie de smbolos que se utilizan para escribir instrucciones de

    programacin (respetando ciertas reglas o sintaxis). Estas instrucciones estarnubicadas dentro de programas que sern creados para resolver problemas. La idea esque estos programas sean ejecutados por un computador.

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    7/67

    Unidad didctica. Elementos bsicos del lenguaje 7

    Prof. Margarita Pereira

    1.2.Tipos de lenguajes: Existen muchos lenguajes para programar un computador. Unaprimera divisin podra ser:

    Lenguaje de bajo niveltambin conocido como lenguaje de mquina, es ellenguaje ms bsico que consiste en una coleccin de instrucciones muy detalladasque controlan la circuitera interna del computador, por lo que losmicroprocesadores procesan exclusivamente seales electrnicas binarias (enrealidad es una secuencia de ceros y unos); si bien es cierto que el lenguaje de bajonivel es el lenguaje natural del computador, tambin es cierto que no es el lenguajeque se utiliza con mayor frecuencia para escribir programas de aplicacin ya queno es el ms entendible por las personas.

    Lenguajes de alto nivelson los ms utilizados para escribir programas deaplicacin ya que son ms sencillos y compatibles con la forma de pensar de los

    humanos. La mayora de estos lenguajes son de propsito general, entre ellospodemos mencionar el Lenguaje C, C++, Pascal, Java, Basic, Fortran, etc. Haytambin lenguajes depropsito especialque estn diseados especficamente paraalgn tipo particular de aplicacin, como por ejemplo CSMP y SIMAN sonlenguajes propios para desarrollar simulaciones y LISP que es un lenguajeorientado al tratamiento de listas y se utiliza ampliamente en aplicaciones deinteligencia artificial.

    Es importante aclarar que el compilador es el encargado de verificar la sintaxisdel lenguaje y producir (generar) el programa objeto (es el programaque entiende el computador se encuentra en un lenguaje de bajo nivel),entonces el proceso de compilacin consiste en convertir un programa fuente(el programa que escribimos en lenguaje C++, la extensin de estosprogramas es.cpp) en un programa objeto que pueda ser interpretado por elcomputador (extensin.exe).

    1.3.Lenguaje de programacin C++: Es un lenguaje de propsito general. Susinstrucciones constan de trminos que se parecen a expresiones algebraicas, ademsde ciertas palabras claves como IF, ELSE, FOR, etc. C++ difiere de algunos otroslenguajes de propsito general ya que tiene caractersticas adicionales que permiten suuso a un nivel ms bajo, cubriendo as el vaco entre el lenguaje de mquina y loslenguajes de alto nivel ms convencionales. Esta flexibilidad permite el uso de C++en la programacin de sistemas operativos as como tambin en la programacin de

    LO MS IMPORTANTE INDEPENDIENTEMENTE DEL LENGUAJE DE PROGRAMACIN A UTILIZAR, ES TENER UNA

    BUENA LGICA DE PROGRAMACIN.

    Para efectos de esta asignatura usaremos el lenguaje C++ y elcompilador Devcpp que trabaja bajo Windows.

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    8/67

    Unidad didctica. Elementos bsicos del lenguaje 8

    Prof. Margarita Pereira

    aplicaciones. Este lenguaje se caracteriza por hacer posible la redaccin de programasfuentes muy concisos y portables, ya que dispone de:

    Un gran nmero de operadores. Un repertorio propio de instrucciones. Numerosas funciones de bibliotecas que mejoran las instrucciones bsicas. Permite a los usuarios escribir funciones de biblioteca adicionales para su

    propio uso. Con esto el usuario fcilmente puede ampliar las caractersticas ycapacidades del lenguaje.

    Breve resea histrica de C++: Fue desarrollo por Bjarne Stroustrup en loslaboratorios Bell, este lenguaje se basa en el lenguaje C y por lo tanto todas lascaractersticas estndar y bsicas de C estn disponibles en C++. Sin embargo C++ noes solo una extensin de C ya que incorpora nuevos fundamentos que constituyen una

    base para la programacin orientada a objetos (POO) un nuevo paradigma, unanueva forma de pensar, concebir y resolver los problemas a nivel de programacin.Con este paradigma Bjarne incorpora en el lenguaje la capacidad para el diseo de lasllamadas clases y objetos, conceptos muy en boga en la programacin actual. Declases y objetos basta saber por ahora que consisten en un sistema que pretende acercarlos lenguajes de programacin a una comprensin ms humana basndose en laconstruccin de objetos, con atributos (caractersticas) propias y acciones (mtodos)sobre esos atributos. El lenguaje C fue desarrollado originalmente en los aos setentapor Dennis Ritchie en Bell Telephone Laboratories, Inc.

    1.4. Definicin de Sintaxis: En un lenguaje de programacin la sintaxis esta formada porun conjunto de reglas que determinan si las instrucciones del programa estn bienescritas. Su objetivo es proveer una notacin especfica que permita la comunicacinentre el programador y el procesador del lenguaje. Dicho de otra forma una gramticarepresenta la definicin formal de la sintaxis de un lenguaje.

    Asociemos este concepto con la escritura correcta de un documento en el idioma(lenguaje) espaol, ciertamente existen una reglas conocidas como reglas ortogrficasque debemos respetar y seguir al pie de la letra para escribir sin errores, todosescribimos documentos y luego utilizamos la herramienta del corrector ortogrfico queposee el procesador para verificar que las palabras estn sintcticamente correctas;bueno el compilador viene a comportarse como el corrector de ortografa, claro est el

    hecho de no cometer errores ortogrficos en el documento no asegura que los prrafosescritos tenga una idea correcta. Lo mismo pasa con el compilador, el hecho de que tuprograma compile NO quiere decir que funcione correctamente ( produzca losresultados esperados), recuerda el compilador chequea si las instrucciones cumplencon la sintaxis establecida por el lenguaje de programacin.

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    9/67

    Unidad didctica. Elementos bsicos del lenguaje 9

    Prof. Margarita Pereira

    1.5.Pasos para realizar un programa en un lenguaje de programacinLEER detalladamente el enunciado del problema, de tal forma que haya claridad

    en lo que se requiere. Este proceso conlleva un anlisis exhaustivo del enunciado.

    ESCRIBIR( hacer ajustes-modificaciones de) las instrucciones del programa enel lenguaje de programacin haciendo uso de un editor de textos (en nuestro casoel compilador Devcpp tiene incorporado su propio editor). Grabar el programa enun medio de almacenamiento secundario. Es importante destacar que la extensinde los programas fuentes de C++ es .cpp

    COMPILAR el programa fuente. El objetivo de la compilacin es chequear lasintaxis del lenguaje. Si hay errores de compilacin se debe regresar al editor(PASO 2) hacer los ajustes (modificaciones), grabar nuevamente el programafuente y volver a compilar (PASO 3). Este proceso se repite hasta que NOHAYAN ERRORES EN COMPILACIN (errores de sintaxis). Aqu se genera unprograma ejecutable temporal.

    ENCADENAR enlazar el programa con las bibliotecas (libreras) incluidas en elprograma fuente. Estas bibliotecas pueden ser las que se encuentran predefinidas en

    el lenguaje de programacin y/ bibliotecas propias realizadas por el usuario. Aquse genera el programa ejecutable final con extensin .exe. Si no localiza lasbibliotecas incluidas en el programa fuente, dar un error. Se debe chequear si noestn disponibles en el medio de almacenamiento secundario, tambin podra serque el proceso de instalacin del compilador no se haya realizado correctamente.

    EJECUTAR correr el programa. Para ello usted puede escribir a nivel deconsola el nombre del programa y presionar ENTER tambin puede colocarsesobre el icono del programa ejecutable y presionar CLIC con el ratn. Si elprograma presenta errores de ejecucin (errores de lgica) deber hacer los ajustesregresando al PASO 2 e inclusive en algunos casos deber regresar al PASO 1. En

    caso de que el programa no presente errores de ejecucin ha finalizadoexitosamente el proceso.

    Estos pasos se pueden representar grficamente as:

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    10/67

    Unidad didctica. Elementos bsicos del lenguaje 10

    Prof. Margarita Pereira

    Podramos asegurar que un programa esta correcto

    solo si compila y produce resultados?

    Pues la respuesta es NO, muchas veces nos alegramos porque al corregir todos los erroresde compilacin (errores sintcticos) y ejecutamos el programa introduciendo datos,vemos que da unos resultados y pensamos que ya esta resuelto todo; pero la cosa no es

    tan simple, debes saber seleccionar los datos de prueba y de antemano saber cuales deben serlos resultados esperados.

    2. Estructura bsica de un programa en C++Todo programa en C++ consta de uno o ms mdulos llamados funciones. Una de las

    funciones se llama main que es la funcin principal (cuerpo principal del programa,

    Erroresde

    E ecucin

    Editar el programa(Tipear y/o modificar)

    Grabar el programa

    Compilar programay

    Enlazar bibliotecas

    Erroresde

    Sintaxis

    no

    no

    si

    si

    Ejecutar programa

    Chequear lgicadel programa

    Leer el Problema

    INICIO

    FIN

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    11/67

    Unidad didctica. Elementos bsicos del lenguaje 11

    Prof. Margarita Pereira

    donde se encuentra la lgica central). El programa comenzar con la ejecucin de estafuncin main, la cual puede acceder con la secuencia establecida en las instruccionesescritas a las dems funciones. Estas funciones adicionales al main debern realizarse

    aparte, bien sea antes despus de la funcin main.Una funcin en C++ es un subprograma subrutina mdulo programa

    pequeo que devuelve un nico valor, un conjunto de valores ningn valor (en estecaso la funcin realiza alguna tarea especfica pero no necesita retornar ningn

    valor). Las funciones sern tratadas ms adelante en esta gua.

    En general un programa en C++ est formado por tres grandes bloques:

    Definiciones y/o Declaraciones. Funcin main.

    Desarrollo (implementacin) de las otras funciones definidas por el usuario.2.1.Definiciones y/o Declaraciones: Todas las definiciones que se elaboren en este

    bloque son consideradas como definiciones globales, es decir que pueden serutilizadas en cualquier parte del programa. Lo que se encuentra dentro de estebloque es opcional, usted deber evaluar el problema que desea resolver y decidircuales son las definiciones y declaraciones que necesita. Dentro de este bloque seencuentra lo siguiente:

    2.1.1.Directivas del Preprocesador: Son instrucciones especiales, las cuales sonejecutadas al principio del proceso de compilacin. Comienzan con elsmbolo #. Generalmente aparecen al principio del programa, pero esto no esobligatorio. De tal forma que la directiva del preprocesador puede apareceren cualquier parte del programa.

    La directiva ser aplicable solo a las instrucciones del programa que estnescritas despus de la misma.

    Las directivas ms usadas son #include y#define.

    #include: Sirve para tener acceso a los archivos de biblioteca (archivos decabecera), que no son ms que libreras las cuales agrupan un conjunto defunciones que estn disponibles para ser usadas en cualquier programa. Laextensin de estos archivos de biblioteca es .h.

    Sintaxis:

    #define: Sirve para definir constantes simblicas dentro de un programa. Unaconstante simblica es un nombre que sustituye una secuencia de caracteres. Loscaracteres pueden representar una constante numrica, una constante de carcter ouna constante de cadena de caracteres. Entonces cuando se compila el programaautomticamente la constante simblica es reemplazada por su correspondientesecuencia de caracteres. Generalmente estas constantes se suelen definir alcomienzo del programa pero esto no es obligatorio.

    #include nombre_del_archivo_de_biblioteca

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    12/67

    Unidad didctica. Elementos bsicos del lenguaje 12

    Prof. Margarita Pereira

    Sintaxis:

    nombre_de_la_constante : representa un nombre simblico.dato: representa la secuencia de caracteres asociada al nombre simblico.Estos caracteres pueden ser letras, nmeros o caracteres especiales.

    Como se observa en la sintaxis el #define no termina con punto ycoma (;). Si se coloca el ; este carcter formara parte de la

    constante.

    Es importante destacar, que las constantes simblicas no son obligatorias enlos programas, sin embargo en algunos casos se recomienda su utilizacin yaque contribuyen al desarrollo de programas claros y ordenados. La idea escolocar nombres significativos a las constantes simblicas de tal forma que elnombre de la constante por si solo nos ubique de a que constante se refiere; estose debe a que el ser humano identifica de forma ms rpida un nombre que unvalor.

    As por ejemplo, si estamos haciendo un programa que tenga que ver connotas definitivas de alumnos podramos definir las siguientes constantessimblicas que son numricas:

    #define MAX_NOTA 100#define MIN_NOTA 0

    Otros ejemplos de constantes alfanumricas:

    #define LETRA_ALTA A#define AMIGA maria

    Por otro lado, es mucho ms fcil y rpido cambiar el valor de la constanteen una sola lnea (la del #define) que cambiar la aparicin del valor en variaslneas del programa.

    Tambin se pueden definir macros dentro de un programa. Este puntono es objetivo de esta asignatura sin embargo mencionaremos que las macrosconsisten en definir identificadores simples que son equivalentes a expresiones

    instrucciones completas (grupos de instrucciones). En este sentido las macrosse parecen a las funciones, pero son definidas y tratadas de forma diferentedurante el proceso de compilacin.

    2.1.2. Declaraciones globales: En este bloque se pueden definir constantes, tipos dedatos definidos por el usuario, variables y prototipos de funciones. Los detallesde estas declaraciones sern planteados ms adelante en esta gua.

    #define nombre_de_la_constante dato

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    13/67

    Unidad didctica. Elementos bsicos del lenguaje 13

    Prof. Margarita Pereira

    Para qu sirven las constantes simblicas?Es necesario (obligatorio) incluirlas en el programa. Un programa que no incluya libreras es incorrecto?

    Seguramente acertaste en tus respuestas, verifica. Primero, las constantes simblicassirven para sustituir datos (numricos o caracteres) con un nombre (es unidentificador) de esta manera el compilador asocia el nombre con el dato. No esobligatorio que existan dentro del programa, debes analizar el problema que vas aresolver y decidir si se justifica el uso de constantes simblicas en el mismo. Algosimilar ocurre con el uso de las libreras, las incluyes en tu programa solo si lasnecesitas, debes aprender a programar en forma eficiente usando slo lo que requieraspara el programa que estas desarrollando en un momento dado. Debes trabajar coneficiencia.

    2.2.Funcin main: Este bloque corresponde al cuerpo principal del programa. Suestructura es la siguiente:

    int main() // Cabecera de la funcin main{ // Comienza el programa principal // bloque de definiciones y/o declaraciones locales al main

    inst1;inst2;. // Secuencia lgica de instrucciones

    ....instn;

    return 0; // Es opcional (resultado de la funcin)} // Fin del Programa

    int main() es equivalente a main() por defecto para C++ la funcin main retornaun valor entero

    La instruccin return 0deber colocarse si la cabecera de main esta escritacomo int main()

    La instruccin return 0 nodeber colocarse si la cabecera de main esta escritacomo main()

    Qu pasara si un programa no tiene instrucciones dentro del main?

    Ser que no compila?

    Ser que no se puede ejecutar?

    imagnate que tu main es el siguiente

    main()

    {}

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    14/67

    Unidad didctica. Elementos bsicos del lenguaje 14

    Prof. Margarita Pereira

    Bueno, el hecho de que el programa no tenga instrucciones dentro del main no quieredecir que no se puede compilar y ejecutar, el detalle es que un programa con su main(cuerpo principal) vaco no hace nada. Entonces, evidentemente no haramos

    programas as ya que no estamos resolviendo ningn problema. Espero hayasacertado en tu respuesta.

    2.3.Implementacin de las funciones definidas por el usuario: En general una funcindebe mantener la siguiente estructura:

    Una cabecera de la funcinSintaxis

    La lista de argumentos puede estar vaca pero los parntesis sonobligatorios

    Cuando la funcin no retorna ningn valor en el tipo de dato se lecoloca la palabra reservada void

    Definiciones y/o declaraciones locales (es opcional). Aqu se pueden definirconstantes, tipos de datos y declarar variables. La sintaxis de cada una serdetallada ms adelante en esta gua.

    Cuerpo principal de la funcin el cual debe comenzar con llave apertura { yterminar con llave de cierre }.

    { // Aqu comienza el cuerpo principal de la funcininstrucciones;.......instrucciones;

    return valor;} // Aqu finaliza la funcin

    NOTA: Dentro del conjunto de instrucciones se define lalgica y secuencia que debe ejecutar la funcin, allpueden existir instrucciones de entrada, salida,asignaciones, operaciones matemticas, instrucciones

    selectivas, instrucciones repetitivas, etc.

    Es importante aclarar que la implementacin (escritura detallada de lasinstrucciones de la funcin) no necesariamente debe ser colocada despus de la funcinmain tambin pudiese ser escrita antes del main y no hay ningn problema.

    Por estandarizacin para efectos de esta asignatura las funcionesdefinidas por el usuario sern desarrolladas despus de la funcin main.

    Tipo_de_dato nombre_de_la_funcin (lista_de_argumentos)

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    15/67

    Unidad didctica. Elementos bsicos del lenguaje 15

    Prof. Margarita Pereira

    3. Elementos de un programa en C++3.1.Conjunto de caracteres de C++: Para formar los elementos bsicos del programa

    (constantes, variables, operadores, expresiones, etc.) se utilizan las letras maysculas( A,B,C,..., Z), las letras minsculas (a,b,c,..,z), los nmeros (0,1,2,3,..,9) y ciertoscaracteres especiales (+, -, *,/, &,\, !, #, , , =, {, }, _, espacio en blanco, (, ),etc.).

    Cabe resaltar que C++ utiliza ciertas combinaciones de estos caracteres pararepresentar elementos especiales. En el siguiente cuadro se presentan algunosejemplos:

    SECUENCIA DEESCAPE

    CARACTER (lo que producela secuencia de caracteres)

    \a sonido de alerta

    \b retrocede un carcter

    \t permite dejar espacios tabulados a nivel horizontal (por lnea)

    \n avanza a la lnea siguiente

    \r retorno de carro

    \f avanza a la pgina siguiente

    \ escribe el carcter comilla doble

    \ escribe el carcter comilla simple

    \\ escribe el carcter barra invertida \ \0 escribe el carcter nulo

    Estas secuencias de caracteres se conocen comosecuencias de escape, lo que nosinteresa saber en este momento, es que cada secuencia de escape representa un solo

    carcter aun cuando este formada por dos ms caracteres.

    Es de hacer notar que los caracteres en C++ se almacenan internamentecomo nmeros, por ello se pueden realizar operaciones aritmticas con datos de tipochar. Por ejemplo se puede convertir una letra mayscula en su correspondiente letra

    minscula y viceversa, slo basta sumarle o restarle el valor 32 a la variable char. En latabla ASCII primero aparecen las letras mayscula y despus las minsculas. As elvalor ASCII de la letra A es 65 y el de la letra a es 97. Si al valor 65 se le suma 32el resultado es 97 que como se puede observar es el valor ASCII de la letra aminscula.

    Ejemplos:

    char letra = 'M' // asigna a la variable letra el valor M

    letra = letra + 32; // ahora letra contiene el valor m

    letra = letra + 1; // ahora letra contiene el valor n

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    16/67

    Unidad didctica. Elementos bsicos del lenguaje 16

    Prof. Margarita Pereira

    char letra = 'p'; // asigna a la variable letra el valor p

    letra = letra - 32; // ahora letra contiene el valor P

    letra = letra - 1; // ahora letra contiene el valor O

    3.2.Palabras reservadas: En todos los lenguajes de programacin existen ciertaspalabras que tienen un significado particular para el compilador. Estas palabras seconocen como palabras reservadas del lenguaje, ellas slo pueden ser usadas para elpropsito del cual fueron creadas y no pueden utilizarse para otros fines. De estamanera las palabras reservadas no pueden usarse para definir identificadores. Ejemplode algunas palabras reservadas: main, void, if, else, int, char, float, const, while, enum,for, return, struct, etc.

    3.3.Identificadores: Son nombres que se utilizan para nombrar elementos de unprograma como las constantes, tipos de datos, variables y funciones. La regla generales que un identificador est formado por una secuencia de letras y/o nmeros y/ocarcter _ en cualquier orden; excepto al comienzo que debe ser una letra o el carcter_ . La cantidad de caracteres del identificador depende del compilador que se esteusando, en nuestro caso el lmite de caracteres para un identificador son 32, si elidentificador es ms largo el compilador ignorar los que exceden a 32.

    As por ejemplo el identificador sueldo es diferente al identificador SUELDO tambines diferente Sueldo y diferente SUeldo y diferente sueldO y as todas las posiblescombinaciones de minsculas y maysculas para ese identificador.

    A continuacin se presentan una lista de identificadores vlidos:

    nombre_edadct1, ACUM_TOTAL, TABLALista_de_clase

    A continuacin se presentan una lista de identificadoresNO VLIDOS:

    4numxct-3acum total %porcentaje

    Es vlido el siguiente identificador Main?

    Pues s, como la primera letra es mayscula el identificador Main no representa lacabecera de la funcin main, lo que pasa es que no es recomendable usaridentificadores que tengan la misma secuencia de caracteres que laspalabras reservadas del lenguaje, tienden a prestarnos confusin.

    3.4.Comentarios: Son instrucciones no ejecutables por el compilador. Estas instruccionesson utilizadas por el usuario del lenguaje (programador) para hacer aclaratorias deciertas partes del programa. Es una buena poltica de programacin comentar cadafuncin que se programe (es decir escribir una pequea descripcin de lo que hace).Para C++ existen dos formas de hacer comentarios:

    IMPORTANTE: Para C++ las letras maysculas son diferentesa las letras minsculas.

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    17/67

    Unidad didctica. Elementos bsicos del lenguaje 17

    Prof. Margarita Pereira

    Comentarios para una sola lnea: Colocando al comienzo de la lnea dos caracteresde barra (//)

    Ejemplo://Esta funcin permite calcular el promedio de la seccin de claseComentarios que abarquen ms de una lnea: Colocar al comienzo de la lnea loscaracteres /* luego escribir el comentario con la cantidad de lneas que se necesiten yfinalizarlo con los caracteres */

    Ejemplo: /* Esta funcin permite calcular el promedio de la seccin de clase de laasignatura de programacin 1 de la carrera de informtica */

    Es importante destacar que los comentarios son importantes, pero no deben serusados en exceso ya que se pierde la esencia del programa.

    3.5.Archivos de cabecera: Tambin se conocen como libreras unidades archivos debiblioteca. Son archivos especiales que agrupan una serie de funciones, la extensinde estos archivos es .h (h es la inicial de la palabra header cuya traduccin escabecera).

    El lenguaje tiene predefinido y a disposicin de los usuarios programadores unaserie de archivos de cabecera. Para usar las funciones que se encuentren dentro de losarchivos de cabecera, el programador debe incluir en su programa la directiva

    #include nombre_del_archivo_de_cabecera

    Esta directiva ya fue detallada anteriormente en esta gua.

    Tambin es posible que los usuarios programadores puedan realizar sus propiosarchivos de cabecera. Deben transcribir las funciones que deseen agrupar en el archivode cabecera y grabar este archivo con extensin .h, luego puede ser utilizado porcualquier otro programa con slo incluirlo con la directiva #include.

    Vamos, es hora de hacer una pausa, dale un descansito a tu cerebropara que pueda asimilar lo que has ledo y as fijar elconocimiento. Tomate un caf, reljate y cuando regreses

    comenzamos con el punto 4 de esta unidad.4. Datos

    4.1. Definicin: Cabrera, H (1997) seala:

    El termino que usamos para describir las seales con las cuales trabajacomputadora es dato; aunque las palabras dato e informacin muchasveces son usadas indistintamente, si existe una diferencia importanteentre ellas. En un sentido estricto, los datos son las seales individualesen bruto y sin ningn significado que manipulan las computadoras paraproducir informacin. (p. s/n)

    4.2. Tipos de datos: El tipo de un dato determina su forma de almacenamiento enmemoria y las operaciones que pueden ser efectuadas con l. El lenguaje C++ofrece diversos tipos de datos, cada uno de los cuales tiene su forma de serrepresentado en la memoria del computador.

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    18/67

    Unidad didctica. Elementos bsicos del lenguaje 18

    Prof. Margarita Pereira

    A continuacin se presenta un cuadro con los tipos de datos bsicos, el tamaode memora que ocupa y el rango permisible de valores. Es de hacer notar que eltamao de memoria para cada tipo de datos puede variar de un compilador de C++

    a otro. Los tamaos de los tipos presentados en el cuadro se corresponden con elcompilador Devcpp. Por otro lado debemos saber que los identificadores de lostipos asociados deben ser escritos en minscula:

    GRUPO DESCRIPCIN TAMAO(BYTES)

    TIPOSASOCIADOS

    RANGOVALORES

    EJEMPLOS

    Enteros Son valoresnumricos positivos ynegativos sindecimales

    4 int -32768 .. +32767int contador;

    Coma

    flotante(reales)

    Son valores

    numricos positivos ynegativos condecimales. El carcterque identifica la partedecimal es el punto

    4 float -1.E-36

    .. +1.E+36

    float promedio;

    Comaflotantede dobleprecisin(reales)

    Son valoresnumricos positivos ynegativos condecimales de dobleprecisin (ms cifrassignificativas y

    mayor valor posible

    del exponente)

    8 doubledouble porcentaje;

    Carcter Cualquier elementodel conjunto decaracteres (engeneral conjunto de

    caracteres ASCII)

    1 char -128 .. 127char letra;

    Booleano Es un tipo de datoque puede recibirsolo dos valores:true, false

    1 bool Internamente paratrue almacena valorde 1 y false el valorde 0

    bool encontrado;

    Algunos de estos tipos bsicos de datos (enteros, reales, char) se pueden ampliarutilizando los cualificadores que no son ms que modificadores del tipo de dato original; deesta forma tenemos los siguientes cualificadores: short (corto), long (largo), signed (consigno) y unsigned (sin signo).

    En general con estos cualificadores podramos tener la siguiente gama de enteros:

    Enteros cortos: short int es equivalente a short (2 bytes)Enteros largos: long int es equivalente a long (4 bytes)Enteros con signo : signed int (4 bytes)Enteros sin signo: unsigned int (4 bytes)Enteros cortos con signo: signed short int es equivalente a signed short (2 bytes)

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    19/67

    Unidad didctica. Elementos bsicos del lenguaje 19

    Prof. Margarita Pereira

    Enteros cortos sin signo: unsigned short int es equivalente a unsigned short (2 bytes)Enteros largos con signo: signed long equivalente a signed long int (4 bytes)Enteros largos sin signo: unsigned long equivalente a unsigned long int (4 bytes)

    Algunos compiladores permiten el cualificador long a los tipos de datos realesfloat y double. En el caso de los tipos de datos char podemos tener: char,unsigned char (1 byte)

    4.3. Constantes: En general una constante es un objeto cuyo valor se mantiene fijo ( nopuede cambiar, ser modificado) a lo largo de la ejecucin del programa. Existenconstantes numricas (enteras y reales ->coma flotante) y alfanumricas (carcter y cadena de caracteres). Estas constantes pueden ser representadas comoconstantes simblicas (#define ya explicado en esta gua) y/o constantesdeclaradas.

    Sintaxis para las constantes declaradas:

    donde: const es una palabra reservadatipo_de_constante es cualquier tipo de dato (ver cuadroanterior). Si no se coloca nada en tipo_de_constante pordefecto asume que es entero (int).identificador es el nombre que se le esta colocando a laconstante. Debe cumplir con las especificaciones de

    identificador vlido.valor es el dato que se quiere asignar a la constante.la instruccin debe finalizar con ;

    NOTA: el valor debe ser compatible con el tipo de constante

    Ejemplos de constantes declaradas:

    const int NUMERO_EMPLEADOS = 100; es equivalenteconst NUMERO_EMPLEADOS = 100;

    const float BONO = 50400.50;

    const float REDONDEO = .50;const char LETRA = A;

    4.4. Variables: Una variable es un identificador que se utiliza para representar ciertotipo de informacin cuyo dato puede variar (cambiar, modificarse) dentro de unadeterminada parte del programa, es decir a una variable se le pueden asignar

    Por estandarizacin para esta asignatura colocaremos todoslos identificadores de constantes en letras maysculas.

    const tipo_de_constante identificador = valor;

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    20/67

    Unidad didctica. Elementos bsicos del lenguaje 20

    Prof. Margarita Pereira

    diferentes valores en distintas partes del programa; de esta forma la informacinrepresentada puede cambiar durante la ejecucin del programa. Sin embargo, eltipo de datos asociado a la variable no puede cambiar.

    Sintaxis

    donde: tipo_de_dato es cualquier tipo_de_datos bien sea de los que seencuentran predefinidos en el lenguaje o algn tipo de dato

    creado o definido por el usuario (programador) como porejemplos arreglos, estructuras, enumerados, entre otros.

    identificador es el nombre que se le va a colocar a la variable,por supuesto debe cumplir con las especificaciones deidentificador vlidoLa instruccin debe finalizar con punto y coma

    Ejemplos de variables:

    int contar, total, numero;char letra;

    Float sueldo;

    Es importante explicar que con la declaracin de una variable se reserva unadireccin (posicin) de memoria que ser reconocida con el identificador que secoloco en la declaracin de la variable.

    Adems C++ permite que en la instruccin de declaracin se pueda inicializar la

    variable si se requiere, de la siguiente forma:

    tipo_de_dato identificador = valor_inicial;

    valor_inicial es el dato con el que se quiere inicializar la variable, por supuestoeste dato debe ser coherente con el tipo de dato

    Ejemplos:

    char sexo; // variable de tipo char no inicializadaint contador = 0; // variable de tipo entero inicializada en cerochar letra_obtenida = B;// variable de tipo char inicializada en caracter B

    tipo_de_dato identificador; // para una sola variable// para varias variables del mismo tipo de dato

    tipo_de_dato identificador1,identificador2,identificadorn;

    Por estandarizacin para esta asignatura colocaremos todoslos identificadores de variables en letras minsculas.

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    21/67

    Unidad didctica. Elementos bsicos del lenguaje 21

    Prof. Margarita Pereira

    bool encontrado = false; // variable de tipo booleano inicializada en falseint contador = 0, acumulador; /* dos variables de tipo entero. La variable

    contador se inicializa en cero pero acumulador no se inicializa */

    int ct1,ct2,ct3 = 0;/* se declaran tres variables entero y se inicializa con elvalor de cero */

    Por otro lado hay un concepto muy importante que es el mbito de las variables estose refiere al alcance o vida de las variables; es decir dependiendo del lugar donde sedeclare la variable, ella tendr vida ( podr ser utilizada). En general el alcance es

    global o local.

    Todo el programa (declaracin global) En una funcin en particular (declaracin local) Incluso en una porcin (parte) del programa o en una porcin (parte) de una

    funcin. Por ejemplo dentro de una instruccin if (si selectiva) se podra definir unavariable, esta variable solo existe dentro del bloque if, si quisiramos hacerreferencia a esa variable fuera del if nos dara un error de identificador nodeclarado. Esto es posible ya que el lenguaje C++ nos permite declarar variables encualquier parte del programa.

    Tipos bsicos de variables en C++: Podemos distinguir tres grandes grupos devariables que son: globales, locales y dinmicas.

    Variables Globales: tambin conocidas como variables externas. Son variables cuyombito se extiende desde el punto donde se definen hasta el resto del programa; es

    decir la variable puede ser usada despus de su definicin hasta el final delprograma. No podr ser usada en las instrucciones que estn antes de su definicin.

    Variables Locales: tambin conocidas como variables automticas, se declaransiempre dentro de una funcin y son locales a la funcin donde han sido declaradas;es decir su mbito esta confinado a esa funcin (solo se pueden usar en la funcindonde fueron definidas). Las variables definidas en funciones diferentes sernindependientes unas de otras, incluso si tienen el mismo nombre. Existen ciertasconsideraciones que se deben tener claras para trabajar con las variables locales:

    Las variables locales no pueden ser usadas fuera de la funcin donde sedefinieron.

    Los nombres de las variables no tienen porque ser nicos, pueden habervariables con el mismo nombre en funciones diferentes; en este caso cadavariable es distinta ya que pertenece a funciones distintas.

    Las variables locales no existen en memoria hasta tanto no se ejecute lafuncin. Es en el momento en que se ejecuta la funcin que estas variablesautomticamente se crean en la memoria y desaparecen (liberan) cuando setermina la ejecucin de la funcin.

    Variables Dinmicas y de Objetos: Estas variables se crean y liberan durante laejecucin del programa. Existen funciones que permiten solicitar memoria para una

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    22/67

    Unidad didctica. Elementos bsicos del lenguaje 22

    Prof. Margarita Pereira

    variable dinmica y tambin para liberar la memoria ocupada por la variable cuandoya no se necesite.

    Las constantes como su nombre lo indica mantiene un valor fijo en todo elprograma, en cambio las variables sus valores pueden cambiar a lo largo de laejecucin del mismo.

    Vamos, es hora de hacer una pausa, estira las piernas, digiere todo lo referente a lainformacin de los datos y las cosas que permite hacer nuestro lenguaje C++,dentro de poco nos tocar probar todo esto, ten un poco de paciencia ya tesentars en el computador a programar, recuerda el papel agunta todo pero elcomputador no.

    5. Instruccin de asignacin: El objetivo de este tipo de instruccin (comando osentencia) es colocar valores (datos) a variables que se encuentren declaradaspreviamente.

    Sintaxis

    donde nombre_de_la_variable representa el identificador que se coloco paradeclarar la variable.A una variable se le puede asignar:

    Directamente un dato. El resultado de una expresin, en este caso primero se

    evala la expresin y luego el resultado es asignado a lavariable.

    El resultado de una funcin, en este caso el tipo de dato de la funcinNO PUEDE SER VOID.

    Es importante que la asignacin sea coherente con el tipo de dato de la

    variable.La instruccin debe finalizar con punto y coma

    6. Instruccin de Entrada (leer) y Salida (escribir) de datos: Estas instruccionespermiten la transferencia de informacin entre el computador y los dispositivosperifricos (teclado, pantalla, impresora, diskettes, cds, pendrive, entre otros). En C++la entrada y salida de datos se trabaja con flujos de streams, y las funciones propiaspara estas actividades se encuentran dentro de un archivo de cabecera predefinido en ellenguaje llamado iostream (traduccin input output stream, entrada salida de stream).

    Te qued claro cul es la diferencia entre una constantey una variable?

    nombre_de_la_variable = dato expresin resultado de una funcin;

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    23/67

    Unidad didctica. Elementos bsicos del lenguaje 23

    Prof. Margarita Pereira

    Este archivo debe ser incluido dentro del programa haciendo uso de la directiva delpreprocesador #include.

    Entrada de datos: para leer datos se utiliza el flujo de entrada estndar cin (enrealidad es un objeto) normalmente se leen los datos desde el teclado, este flujoutiliza el operador de extraccin que se obtiene escribiendo dos signos mayorconsecutivos as >>. La instruccin debe finalizar con punto y coma.

    Sintaxis

    Por ejemplo para leer la variable sueldo, las siguientes instrucciones son necesarias:

    #include // incluye o inserta el archivo de cabecera iostreamusing namespace std; /* sirve para usar las declaraciones estndar del espacio

    nombrado (consola), esta instruccin es necesaria parapoder utilizar el cin */

    float sueldo; // declaracin de la variable sueldo de tipo real......

    cin >> sueldo; /* coloca el resultado de la entrada por consola (lo que se escribi enel teclado) en la variable sueldo, el cin debe ser escrito enminscula */

    Pero puede ser que necesitemos leer el sueldo, el total de asignaciones y el total de

    deducciones, entonces podramos leer las tres variables con una sola instruccin cin dela forma siguiente:

    cin >> sueldo >> asignaciones >> deducciones;

    En general la sintaxis sera:

    Salida de datos: para sacar o imprimir tanto datos como encabezados se utiliza elflujo de salida estndar cout (en realidad es un objeto). En principio mostraremos los

    resultados de nuestros programas en la pantalla. Este flujo de salida utiliza eloperador de insercin que se obtiene escribiendo dos signos menor consecutivosas nombre_de_la_variable;

    cin >> nombre_primera_variable >> nombre_segunda >>>> nombre_ltima;

    cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    24/67

    Unidad didctica. Elementos bsicos del lenguaje 24

    Prof. Margarita Pereira

    La impresin de encabezados, literales o ttulos: Para esto debe utilizar lascomillas dobles, es decir encerrar entre comillas dobles los ttulos que quieremostrar o imprimir.

    La impresin de datos contenidos en variables: En este caso lo nico quedebe hacer es colocar el nombre de la variable. Pero tambin pudieseimprimir el resultado de una funcin en este caso debera colocar elnombre de la funcin con la lista de sus argumentos (parmetros). Lasfunciones y los argumentos sern detalladas ms adelante en esta gua.

    Por ejemplo necesito leer la variable sueldo_neto, asignaciones y deducciones paracalcular el sueldo total. Este resultado debe mostrarlo en la pantalla. Para satisfacereste requerimiento las siguientes instrucciones son necesarias:

    #include // incluye o inserta el archivo de cabecera iostreamusing namespace std; /* sirve para usar las declaraciones estndar del espacio

    nombrado (consola), al igual que para el cin, stainstruccin es necesaria para poder utilizar el cout */

    float sueldo, asigna, deduce, total; // declaracin de las cuatro variables que necesito......

    cout > sueldo; /* coloca el resultado de la entrada por consola (lo que se escribi enel teclado) en la variable sueldo */

    cout > asigna;cout > deduce;total = sueldo + asigna deduce;

    cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    25/67

    Unidad didctica. Elementos bsicos del lenguaje 25

    Prof. Margarita Pereira

    A continuacin se muestra el programa completo que permite desarrollar el planteamiento

    anterior

    //incluye o inserta el archivo de cabecera iostream#include /* sirve para usar las declaraciones estndar del espacio nombrado (consola), al igual que para el cin, esta instruccin

    es necesaria para poder utilizar el cout*/using namespace std;//declaracin de las cuatro variables que necesitofloat sueldo, asigna, deduce, total;int main() //funcin main{ // inicio programa

    cout > sueldo; //coloca el resultado de la entrada por consola en la variable sueldocout > asigna;cout > deduce;total = sueldo + asigna - deduce; /*asigna a variable total el resultado de la formula

    matemtica */cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    26/67

    Unidad didctica. Elementos bsicos del lenguaje 26

    Prof. Margarita Pereira

    Pues el cuadro representa la salida real del programa, las lneas en blanco son debido a lassecuencias de escape que estn escritas en las instrucciones cout \n \r y lo del espacio en

    blanco no es error si observas con detalle esta instruccin cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    27/67

    Unidad didctica. Elementos bsicos del lenguaje 27

    Prof. Margarita Pereira

    Ejemplos:

    caracter = b;

    total = cantidad;

    numero = 3;

    doble = numero * 2;

    area = calcular(base,altura);

    // variable caracter se le asigna la letra b (b es un dato)

    /* variable total se le asigna el valor contenido en lavariable cantidad */

    // variable numero se le asigna el dato 3

    /* primero se resuelve la expresin numero * 2 y elresultado es colocado en la variable doble */

    /* calcular es una funcin que tiene dos argumentos,primero se ejecuta la funcin calcular y el resultadoes almacenado en la variable area */

    Es importante aclarar que si los dos operandos de una expresin de asignacinson de tipo de datos diferentes, el valor de la expresin de la derecha seconvertir automticamente al tipo de datos que posee el identificador de laizquierda. Estas conversiones automticas de datos dependen de un compilador aotro.

    Las conversiones automticas que ejecuta el compilador son las siguientes:

    Una variable char puede recibir un valor entero (recuerde que los char sealmacenan como nmeros de acuerdo al conjunto de caracteres que

    use el compilador. En la mayora de los casos es el conjunto de

    caracteres ASCII), Pero una variable char no puede nunca recibir unvalor real.

    Una variable entera puede recibir el valor de una variable char, pero no unvalor real.

    Una variable float y double puede recibir valores char y enterosEl siguiente programa muestra ejemplos de estas conversiones:

    #include using namespace std;

    int main(){

    char caracter;int entero;float real;

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    28/67

    Unidad didctica. Elementos bsicos del lenguaje 28

    Prof. Margarita Pereira

    caracter = 'A';entero = caracter;

    real = entero;cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    29/67

    Unidad didctica. Elementos bsicos del lenguaje 29

    Prof. Margarita Pereira

    Por ejemplo:

    variable1 = variable2 = variable3 = expresin;

    ct_alumnos = ct_profesores = ct_obreros = 0;

    En este caso las tres variables ct_alumnos, ct_profesores y ct_obreros se les asigna el valorde cero.

    Adicionalmente C++ posee otros cinco operadores de asignacin: +=, -=, *=, /=, %=

    += : expresin1 += expresin2;

    es equivalente

    expresin1 = expresin1 + expresin2;

    En este caso a expresin1 se le suma el resultado de expresin2 y el resultado esalmacenado en expresin1. Normalmente expresin1 es un identificador definidocomo una variable.

    1

    2

    3

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    30/67

    Unidad didctica. Elementos bsicos del lenguaje 30

    Prof. Margarita Pereira

    Ejemplos:

    a += b;

    a += b*c;

    a += resta(num1,num2);

    a += resta(num1,num2) * 4;

    // a = a + b;

    // a = a + b * c;

    // a = a + resta(num1,num2);

    // a = a + resta(num1,num2) * 4;

    1

    2

    Prioridad de operadores

    1

    2

    1

    1. Ejecucin dela funcin resta2. Ejecucin dela suma.

    3

    2

    1. Ejecucin de lafuncin resta2. Ejecucin de lamultiplicacin porprioridad del operadormatemtico * sobreoperador +3. Ejecucin de la suma

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    31/67

    Unidad didctica. Elementos bsicos del lenguaje 31

    Prof. Margarita Pereira

    Realiza la corrida del siguiente programa, indicando el detalle de las

    salidas en la ejecucin de cada instruccin.

    #include using namespace std;

    int suma(int num1,int num2);

    int main(){

    #define b 2int a = 1,c;

    cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    32/67

    Unidad didctica. Elementos bsicos del lenguaje 32

    Prof. Margarita Pereira

    Compara tu salida con la que presenta el siguiente cuadro:

    .

    -= : expresin1 -= expresin2;

    es equivalente

    expresin1 = expresin1 - expresin2;En este caso a expresin1 se le resta el resultado de expresin2 y el resultado esalmacenado en expresin1. Normalmente expresin1 es un identificador tal comouna variable. Los ejemplos son similares a los presentados con el operador +=

    *= : expresin1 *= expresin2;

    es equivalente

    expresin1 = expresin1 * expresin2;En este caso a expresin1 se le multiplica el resultado de expresin2 y el resultadoes almacenado en expresin1. Normalmente expresin1 es un identificador tal comouna variable. Los ejemplos son similares a los presentados con el operador +=

    /= : expresin1 /= expresin2;

    es equivalente

    expresin1 = expresin1 / expresin2;

    valor de a = 1valor de b = 2a += b : resultado = 3

    Escribe valor para c: 10

    a += b * c : resultado = 23

    a += suma(8,2) : resultado = 33

    a += suma(8,2) * 4 : resultado = 73

    Presione una tecla para continuar . .

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    33/67

    Unidad didctica. Elementos bsicos del lenguaje 33

    Prof. Margarita Pereira

    En este caso divide el valor de expresin1 entre el valor de la expresin2 y elresultado es almacenado en expresin1. Normalmente expresin1 es unidentificador tal como una variable. Si expresin1 es una variable real puede

    almacenar el valor exacto de la divisin (la parte entera y decimal); pero siexpresin1 es una variable entera solo almacena la parte entera resultante de ladivisin. Los ejemplos son similares a los presentados con el operador +=

    %= : expresin1 %= expresin2;

    es equivalente

    expresin1 = expresin1 % expresin2;

    En este caso el operador % almacena el resto del resultado de una divisin.Entonces expresin1 tendr como resultado el resto de la divisin deexpresin1/expresin2. Normalmente expresin1 es un identificador tal como unavariable. Los ejemplos son similares a los presentados con el operador +=

    A continuacin se presenta un cuadro resumen de todos los operadores deasignacin y sus equivalencias:

    Smbolo Ejemplo Descripcin Equivalencia

    = x = y Asigna el valor de y en x x = y

    += x += y A x le suma el valor de y luegoasigna el resultado a la variable x

    x = x + y

    -= x -= y A x le resta el valor de y luegoasigna el resultado a la variable x

    x = x - y

    *= x *= y A x le multiplica el valor de y luegoasigna el resultado a la variable x

    x = x * y

    /= x /= y Dividex entre el valor de y luegoasigna el resultado a la variable x

    x = x / y

    %= x%=y A la variable x le asigna el resto dela divisin de x entre y

    x = x % y

    8.2.Operadores Unarios: Una clase de operadores muy particulares son losoperadores unarios (tambin conocidos como operadores monarios), sedenominan as porque requieren de un slo operando para ejecutarse. En algunoscasos estos operadores preceden al operando (el operador se escribe antes del

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    34/67

    Unidad didctica. Elementos bsicos del lenguaje 34

    Prof. Margarita Pereira

    operando en formato prefijo) y en otro casos se escriben despus del operando(formato postfijo). En C++ existen tres tipos de operadores unarios:

    Operador de Menos Unario (-): Es un operador que indica el signo de unaconstante numrica, variable expresin. Su smbolo es -, pero no debe confundirsecon el smbolo de la operacin resta que necesita dos operandos.

    Operador sizeof(operando): Devuelve un valor numrico que representa el tamaoen bytes de su operando, aqu el operando es un parmetro.

    Ejemplo: cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    35/67

    Unidad didctica. Elementos bsicos del lenguaje 35

    Prof. Margarita Pereira

    Especificaciones generales:

    Los operandos que trabajan con operadores aritmticos deben ser nmeros. Por lotanto pueden ser valores enteros, reales e incluso caracteres (recuerde los charinternamente se almacena en nmero)

    El operador de resto % requiere que los dos operandos sean enteros y el segundooperando no puede ser nulo.

    El operador de divisin / requiere que el segundo operando no sea nulo. Si uno o los dos operandos tienen valores negativos, el signo del resultado de la

    operacin matemtica tendr el valor cuyo signo esta determinado por las reglasdel lgebra. Esto aplica solo para las operaciones suma, resta, multiplicacin ydivisin.

    Para el caso de uno o los dos operandos con signo negativo en la operacin delresto, el signo del resultado en la mayora de los compiladores es el signo delprimer operando.

    Si existen diferencias de tipos de datos entre los operandos que intervienen en laoperacin matemtica, puede ser que internamente se realice una conversin detipo antes de que la expresin alcance su valor final. Lo cierto es que el resultadofinal se expresar con la mayor precisin manteniendo siempre la consistenciacon los tipos de datos de los operandos.

    Como en todos los lenguajes de programacin los operadores tienen prioridad almomento de ser ejecutados. Los parntesis pueden alterar la prioridad establecida

    por defecto. Las prioridades por defecto estn establecidas de acuerdo el siguiente orden

    Prioridad 1: Operadores de signo (operadores unarios) - +

    Prioridad 2: Operadores * / %

    Prioridad 3: Operadores + -

    Si en la expresin a evaluar existen operadores con el mismo nivel de prioridadse ejecutan de acuerdo a como se presentan en la expresin de izquierda aderecha. Por ejemplo el resultado de la expresin

    -3 + 6 * 2 / ( 5 + 1) es -1

    A continuacin se muestra la secuencia de pasos en la evaluacin de laexpresin

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    36/67

    Unidad didctica. Elementos bsicos del lenguaje 36

    Prof. Margarita Pereira

    3 + 6 * 2 / (5 + 1) Paso 1

    3 + 12 / (5 + 1) Paso 2

    3 + 12 / 6 Paso 3

    3 + 2 Paso 4

    -1 Paso 5. Resultado final

    Si la evaluacin que hiciste esta correcta tu respuesta debe ser -230, si no acertasterevisa la evaluacin por pasos que te presento a continuacin:

    10 - 8 * (10 * (12 + 6) / 6)

    10 8 * (10 * 18) / 6

    10 8 * 180 / 6

    10 1440 / 6

    10 240

    -230

    8.4. Operadores de Incremento (++) y Decremento (--): El operador de incrementohace que su operando se incremente en uno y a su vez el operador de decrementohace que su operando se decremente en uno.

    Cul es el resultado de la siguiente expresin:

    10 + (4 - 8) * (10 * (12 + 6) / 6) ?

    -3 + 6 * 2 / ( 5 + 1)

    1

    4

    32

    5

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    37/67

    Unidad didctica. Elementos bsicos del lenguaje 37

    Prof. Margarita Pereira

    Especificaciones generales:

    Si el operador de incremento o decremento se encuentra antes (prefijo) deloperando las acciones en secuencia son que primero se incrementa odecrementa y despus se le asigna el resultado.

    Si el operador se encuentra despus del operando (postfijo) primero se le asignael valor y despus se ejecuta el incremento o decremento.

    Estos operadores pueden estar presentes directamente en instrucciones desalida como parmetros actuales de funciones, en cuyo caso la nica variableque se modifica es la misma que acompaa el operador.

    Si estos operadores se encuentran en instrucciones de asignacin, se modificartanto la variable que recibe la asignacin como la variable que acompaa aloperador.

    ++n es equivalente a n +=1 es equivalente n = n + 1 --n es equivalente a n -=1 es equivalente n = n 1 x = n++ es equivalente a dos instrucciones con la siguiente secuencia:

    x = n; n = n + 1;

    x = n-- es equivalente a dos instrucciones con la siguiente secuencia:x = n; n = n - 1;

    Ejemplos:

    #include using namespace std;

    int main(){

    int a = 5, b, c = 2 ;

    cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    38/67

    Unidad didctica. Elementos bsicos del lenguaje 38

    Prof. Margarita Pereira

    1. Se incrementa la variable a2. Se le asigna resultado del

    incremento a la variable a3. Se suma el valor de lavariable c con el nuevo valorde a, el resultado se depositaen c

    cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    39/67

    Unidad didctica. Elementos bsicos del lenguaje 39

    Prof. Margarita Pereira

    Suponemos que la variable a tiene el valor 7Se decrementa aSe le asigna el decremento a la variable a (ahora tiene valor de 6)

    Se incrementa aSe le asigna el incremento a la variable a (ahora tiene valor de 7)

    Se multiplica a * a. Como el ltimo valor de a es 7 entonces el resultadose obtiene de 7 * 7 que es 49

    El valor 49 es asignado a la variable c

    La Salida del Programa anterior es la siguiente:

    3

    2

    4

    c = --a * ++a;

    3

    2

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    40/67

    Unidad didctica. Elementos bsicos del lenguaje 40

    Prof. Margarita Pereira

    8.5. Operadores Relacionales: Son utilizados para escribir condicionessimples. Es importante que ambos operandos (lado izquierdo y ladoderecho) sean compatibles para poder realizar la comparacin. Acontinuacin se presenta un cuadro con los operadores relacionales que estndisponibles en el lenguaje C++. Se usan normalmente en instrucciones deseleccin (if) y de iteracin (while, for, do while). Cuando se evalan los

    operadores relacionales el resultado es un valor cero (0) uno (1). El cero indicaque la condicin es falsa y el valor 1 indica que la condicin es verdadera. Aspor ejemplo la instruccin a = 7 > 3, se evala primero 7 > 3 esto es verdadero esdecir el resultado es el valor 1 y ese resultado se le asigna a la variable a.Entonces a queda con el valor 1.

    OPERADOR PREFIJO

    a = 5++a resultado = 6 valor de a = 6

    b = ++avalor de a antes de la asignacin = 6valor de a despues de la asignacin = 7valor de b = 7

    c = c + ++avalor de a antes de la asignacin = 7valor de c antes de la asignacin = 2valor de a despues de la asignacin = 8valor de c = 10

    b = a--valor de a antes de la asignacion = 8valor de a despues de la asignacion = 7valor de b = 8

    c = --a * ++avalor de a antes de la asignacin = 7valor de a despues de la asignacin = 7valor de c = 49

    Presione una tecla para continuar . . .

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    41/67

    Unidad didctica. Elementos bsicos del lenguaje 41

    Prof. Margarita Pereira

    Smbolo delOperador

    Significado operador Ejemplo Resultado

    = = Igual 5 = = 5 Verdadero

    ! = Diferente a ! = a Falso

    < Menor que 4 < 4 Falso

    B Falso

    >= Mayor o igual que (6+2) >= 3 Verdadero

    8.6. Operadores Lgicos: Son utilizados para escribir condiciones compuestas. Elresultado de la evaluacin de los operadores lgicos es una expresin booleanaque representa alguno de los dos valores Verdadero Falso.

    Smbolo delOperador

    Significado operador Resultado de la Evaluacin

    and && y Verdadero: si todas las condicionesson verdaderas.

    Falso: si por lo menos una condicines falsa

    or || o Verdadero: si por lo menos unacondicin es verdadera.

    Falso: si todas las condiciones sonfalsas.

    not ! negacin Verdadera si el valor es falso.

    Falso si el valor es verdadero.

    El operador not es un operador unario necesita un slo operando, en cambio eloperador and y el or requieren dos operandos.

    Con relacin a la prioridad de estos operadores lgicos, el operador nottiene prioridad mas alta que and, que a su vez tiene mayor prioridad que el

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    42/67

    Unidad didctica. Elementos bsicos del lenguaje 42

    Prof. Margarita Pereira

    or. Como siempre los parntesis alteran la prioridad normal de los operadores y siexisten varios operadores con la misma prioridad se ejecutan de izquierda a derecha.

    8.7. Prioridad de los Operadores: Los operadores matemticos tienen precedenciasobre los operadores relacionales y a su vez los operadores relacionales tienenprecedencia sobre los operadores lgicos.

    Ejemplo: Si (salario < minimo * 0.1 and nrohijos > 0)

    9. Prueba y depuracin de programas: La prueba o verificacin de un programa consiste enla ejecucin del programa con un conjunto de datos llamados datos de prueba, los cualesdeben ser escogidos previamente y con mucho detalle; de tal forma que se puedan probarlos casos generales (situaciones normales) y los casos excepcionales (situacionesextremas) y de esta manera asegurar el funcionamiento correcto del programa.

    La depuracin de programas, consiste en primera instancia encontrar los errores decompilacin, estos errores estn relacionados con la sintaxis del lenguaje de programaciny en segundo lugar los errores de ejecucin que pueden presentarse de dos maneras:

    Primero con instrucciones que sintcticamente estn correctas pero el computador nola puede ejecutar. Como por ejemplo una divisin por cero, la raz cuadrada de un nmeronegativo, entre otras.

    Segundo errores lgicos que estn relacionados directamente con la lgica impuesta enla secuencia de instrucciones que tiene el programa. Estos errores provienen desde eldiseo del programa son los ms difciles de encontrar ya que el programa puede correrpero los resultados reportados no son los esperados (correctos) de acuerdo a los datos de

    prueba.

    10. Documentacin de Programas: La documentacin se refiere a todo el material de ayudaque acompaa un programa. Existen diferentes tipos de documentacin una dirigida alusuario de la aplicacin ( persona que trabajar con el programa) esta se denominadocumentacin externa (porque esta fuera del programa) incluye diagramas, manualesde usuario en donde se especifiquen las instrucciones para ejecutar y usar el programa. Laotra documentacin esta dirigida a los programadores ( personas que desarrollan losprogramas) que es la documentacin interna (se logra escribiendo lneas de comentariosen el programa). Cada programa tendr su propia documentacin y la misma depender deun programa a otro.

    1 3

    2

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    43/67

    Unidad didctica. Elementos bsicos del lenguaje 43

    Prof. Margarita Pereira

    Debe destacarse la importancia de la documentacin de los programas, ya que estaactividad permite que los programas puedan ser mantenidos (ajustados) y depurados msfcilmente.

    En general, los programas que no presentan documentacin o su documentacin esescasa son difciles de leer, entender, depurar y por su puesto mantener (realizarmodificaciones)

    11.Ejercicios Propuestos: Como ya te he dicho en varias ocasiones que la teora sin laprctica no es nada, tendrs a tu disposicin una lista de ejercicios propuestospara que adquieras destreza a nivel de programacin y adems esrecomendable que no te conformes con hacer los programas en papel, debestranscribirlos en el computador compilarlos y ejecutarlos verificando que las salidasson las deseadas. Ya sabes ante cualquier duda contctame por alguna de las vas que

    se han planteado en el curso, no tengas pena recuerda que tu principal objetivo esalcanzar el aprendizaje de la asignatura. As que, es la hora de tomar el toro por loscuernos y comenzar a practicar con el compilador recordando la sintaxis de lasinstrucciones, para ello tendrs disponible en la seccin de recursos del CursoProgramacin en http://seducla.ucla.edu.ve una lista de ejercicios.

    Resumen

    Al finalizar esta unidad temtica debes haber aprendido que:

    Los programas son las herramientas que nos permiten comunicarnos con lascomputadoras.

    El lenguaje de programacin nos permite desarrollar programas tiles para resolverproblemas de diversas ndoles acadmico, social, econmico, poltico, comercial,cientfico, de la vida diaria, entre otros.

    Para que un programa de computacin pueda ser ejecutado y probado debe ser escritoen algn lenguaje de programacin (en nuestro caso lenguaje C++, con el compiladorDevcpp que trabaja bajo Windows).

    La elaboracin de un programa conlleva las siguientes actividades:1. Leer detenidamente el enunciado del problema para analizarlo.2. Escribir (o hacer modificaciones) la secuencia de instrucciones que tendr elprograma. Recuerda grabar.3. Compilar el programa, para chequear los errores sintcticos (siguiendo las normas

    y reglas del lenguaje de programacin), si hay errores regresar al paso 2, paracorregirlos.

    4. Encadenar el programa, con los archivos de cabecera.5. Ejecutar el programa. Probar el programa con un conjunto de datos previamente

    seleccionados, para verificar que su funcionamiento es correcto. Si no estacorrecto, verificar que tipos de errores presenta para regresar al paso 1 al paso 2.

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    44/67

    Unidad didctica. Elementos bsicos del lenguaje 44

    Prof. Margarita Pereira

    A travs de los compiladores se convierten las instrucciones de lenguaje deprogramacin de alto nivel a instrucciones de lenguaje de mquina que es el queentiende la computadora.

    Un programa esta formado por un bloque de definiciones y/o declaraciones y unafuncin main que define la lgica central del programa.

    Debes tener cuidado con los identificadores que definas, recuerda que deben comenzarcon una letra o caracter _ seguido por letras o nmeros pero no deben haber espaciosen blanco ni tampoco puedes utilizar las palabras reservadas del lenguaje. MUYIMPORTANTE, el uso de las maysculas y minsculas. El lenguaje C++ lasdiferencia. Conveniente que trabajes con la estandarizacin que esta propuesta en estagua la constantes en letras maysculas.

    Dispones de diferentes tipos de datos tales como char, int, double, float, bool, entreotros. Debes escoger los que necesitas de acuerdo al problema que estas resolviendo.MUCHO CUIDADO con las conversiones de tipo de datos, esto te podra ocasionarun gran dolor de cabeza.

    En el bloque de definiciones y/o declaraciones pueden existir: Directivas del preprocesador: que son instrucciones especiales ejecutadas al

    principio de la compilacin, comienzan con el smbolo # son tomadas en cuentaa partir de la lnea donde son colocadas haca adelante. Aqu dispones de#define para definir constantes simblicas y #include para trabajar (incluir) conarchivos de cabecera.

    Definicin de constantes. Para definir valores fijos en el programa. Con ladefinicin de constantes se reserva el espacio de memoria y se coloca un datoque ser fijo para todo el programa.

    Declaracin de variables. Para definir direcciones de memoria cuyo contenidopuede variar a lo largo del programa. Con la declaracin de la variable sereserva el espacio de memoria pero su contenido es indefinido (en trminos decomputacin basura informacin no entendible), pero puedes declarar lavariable y al mismo tiempo inicializarla, el lenguaje C++ lo permite.

    Implementacin de funciones.Dentro de la funcin main o cualquier otra funcin que desarrolles en tu programa

    puedes tener instrucciones de asignacin (asignacin simple y asignacin mltiple),instrucciones de lectura, instrucciones de escritura, entre otras.

    Tienes a tu disposicin un conjunto de operadores que se utilizan en las expresiones,estos son los que indican las operaciones que deben realizarse sobre los operandos. Operador de Asignacin: sirven para colocar un valor (puede ser directamente

    un dato, o una variable o una expresin o una funcin) en una variable.Recuerda que puedes tener asignaciones mltiples.

    Operadores Unarios: trabajan con un solo operando, aqu tenemos el menosunario (para especificar el smbolo negativo), el sizeof(tipo de dato) te sirve

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    45/67

    Unidad didctica. Elementos bsicos del lenguaje 45

    Prof. Margarita Pereira

    para saber el tamao en bytes de un tipo de dato y el operador coma paracolocar varias instrucciones en una misma lnea.

    Operadores Aritmticos: son tiles para realizar operaciones matemticas (+, - ,* , / , %).

    Operadores de Incremento y Decremento: sirven para incrementar ydecrementar en un valor fijo uno(1) una determinada variable. Ellos funcionande manera diferentes dependiendo del sitio donde se coloquen. Si se colocanantes del operando (formato prefijo ++a) primero se asigna la variable y luegose hace el incremento (se le suma el nmero 1). En cambio si se colocandespus del operando (formato postfijo a++) primero se hace el incremento yluego se asigna la variable.

    Operadores Relacionales: te sirven para realizar comparaciones, generalmentese usan para escribir condiciones simples. Recuerda que ambos operandos(izquierdo y derecho) deben ser compatibles, el resultado de su evaluacin esuno (1) para indicar que es verdadero y cero (0) para indicar que es falso. Aqutienes = = (igual), ! = (diferente), < (menor) , (mayor),>= (mayor o igual).

    Operadores Lgicos: para construir condiciones compuestas. Su resultado es unvalor lgico que representa Verdadero (TRUE) Falso (FALSE). Aqu tienesel and && (operador y, es verdadero si todas sus condiciones sonverdaderas, falso cuando por lo menos una condicin es falsa), or ||(operador o, es verdadero cuando por lo menos una condicin es verdadera yfalso cuando todas las condiciones son falsas), por ltimo el operador not !para negar un valor booleano (ser verdadero si el valor de la variable es falso,y falso si el valor de la variable es verdadero).

    Debes darle importancia a la documentacin de los programas ya que es el material deapoyo que acompaa al programa. Recuerda que existe una documentacin interna anivel de lneas de comentarios dentro del programa que ser de utilidad para losprogramadores y una documentacin externa para el usuario de la aplicacin(programa) formada por manuales y cualquier otra material requerido por el usuariodel programa.

    A continuacin se presenta un cuadro con la sintaxis de la instrucciones estudiadas enesta gua.

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    46/67

    Unidad didctica. Elementos bsicos del lenguaje 46

    Prof. Margarita Pereira

    Instruccin Sintaxis

    Incluye un archivo de cabecera #include nombre_del_archivo_de_biblioteca

    Define una constantes simblica #define nombre_de_la_constante dato

    Define una constante declarada const tipo_de_constante identificador = valor;

    Declaracin de variables tipo_de_dato identificador; // para una sola variable// para varias variables del mismo tipo de datotipo_de_dato identificador1,identificador2,

    identificadorn;

    Declaracin e inicializacin devariables

    tipo_de_dato identificador = valor;

    Instruccin de asignacin nombre_de_la_variable = dato expresin resultadode una funcin;

    Instruccin de asignacionesmltiples

    identificador1 = identificador2 = .. = expresin;

    Instruccin de lectura para una

    sola variable

    cin >> nombre_de_la_variable;

    Instruccin de lectura para variasvariables

    cin >> nombre_primera_variable >> nombre_segunda>>>> nombre_ltima;

    Instruccin de escritura(impresin)

    cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    47/67

    Unidad didctica. Elementos bsicos del lenguaje 47

    Prof. Margarita Pereira

    Autoevaluacin Nro. 1

    Ya culminamos la primera unidad y con la finalidad de verificar los conocimientos

    que adquiriste en esta sesin de estudios, realiza la autoevaluacin N 1presentada a continuacin.

    PARTE I. Seleccin simple: A continuacin se presenta una tabla con dos columnas debescolocar en la columna izquierda el nmero que corresponda a la definicin de la columnaderecha.

    ( ) Errores de Sintaxis 1. Operador de Incremento

    ( ) sueldo > 1500 2. Secuencia de escape

    ( ) ++ contador; 3. Instruccin de Escritura

    ( ) #define max 10 4. Lnea de comentario

    ( ) main() 5. Condicin compuesta

    ( ) int cantidad; 6. Constante simblica

    ( ) cin >> cedula; 7. Operacin matemtica( ) // Funcin principal 8. Operador relacional

    ( ) #include 9. Le sirve al programador

    ( ) cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    48/67

    Unidad didctica. Elementos bsicos del lenguaje 48

    Prof. Margarita Pereira

    PARTE II. A continuacin se presenta un programa, detecte los posibles errores sintcticos

    #include

    {int num1,num2;resultado;

    cout > num1;

    cout > num2cout > num3;

    resultado = (num1 + num2) * num3;cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    49/67

    Unidad didctica. Elementos bsicos del lenguaje 49

    Prof. Margarita Pereira

    Respuesta a la Autoevaluacin

    PARTE I. Seleccin simple

    ( 15 ) Errores de Sintaxis 1. Operador de Incremento

    ( 8 ) sueldo > 1500 2. Secuencia de escape

    ( 1 ) ++ contador; 3. Instruccin de Escritura

    ( 6 ) #define max 10 4. Lnea de comentario

    (13 ) main() 5. Condicin compuesta

    (11 ) int cantidad; 6. Constante simblica

    (16 ) cin >> cedula; 7. Operacin matemtica

    ( 4 ) // Funcin principal 8. Operador relacional

    (14 ) #include 9. Le sirve al programador

    ( 3 ) cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    50/67

    Unidad didctica. Elementos bsicos del lenguaje 50

    Prof. Margarita Pereira

    PARTE II. A continuacin se presenta un programa, detecte los posibles errores sintcticos.Los errores sern colocados en azul

    #include using namespacestd

    int main()

    {int num1,num2, num3;int resultado;

    cout > num1;

    cout > num2;cout > num3;resultado = (num1 + num2) * num3;// en la instruccin siguiente no imprime el valor de resultadocout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    51/67

    Unidad didctica. Elementos bsicos del lenguaje 51

    Prof. Margarita Pereira

    3. /* Programa en lenguaje C++ que teniendo como entrada dos nmeros enteros permiterealizar las operaciones matemticas de suma, resta y multiplicacin. */

    #include using namespace std;int Suma(int n1, int n2);int Resta(int n1, int n2);int Multiplicacion(int n1, int n2);

    int main(){

    int num1,num2;system ("cls"); // blanquea la pantalla

    cout > num1;cout > num2;cout

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    52/67

    Unidad didctica. Elementos bsicos del lenguaje 52

    Prof. Margarita Pereira

    Complemento. Ejercicios Propuestos.

    A continuacin te presento una serie de ejercicios que fueron elaborados por la

    Coordinacin de la Asignatura de Programacin (integrada por los profesores:Rosa Daz, Olga Palma, Mara Auxiliadora Prez, Glennys Clemant, MargaritaPereira y Giovanni Torrealba-Coordinador). El objetivo es que con ellos

    termines de ejercitar para reforzar y complementar todo el conocimiento adquirido a lo largode esta unidad.

    Se abrir un foro para preguntas/respuestas de estos ejercicios, as que ya sabes antecualquier duda no dudes en preguntar todos estaremos disponibles para ayudarnosmutuamente, lo importante es culminar la unidad sin lagunas con claridad total para asarrancar con pie firme la segunda unidad.

    1. Determinar cules de los siguientes son identificadores vlidos. Si no son vlidos, explicarpor qu.

    a) registro1

    b) 1registro

    c) archivo_3

    d) return

    e) $impuesto

    f) ocupacin

    g) nombre y direccionh) nombre_y_direccion

    i) nombre-y-direccion

    j) 123-45-6789

    2. Mencionar las reglas referentes a los nombres de los identificadores.3. Son equivalentes las letras maysculas a las minsculas en un identificador?4. Se pueden incluir dgitos en un identificador?5. Se puede incluir cualquier carcter especial en un identificador?6. Cuntos caracteres puede tener un identificador?7. Son todos los caracteres significativos en igual forma en un identificador?8. Qu es una palabra reservada en C++?9. Mencionar y describir cuatro tipos bsicos de datos en C++.10.Nombrar y describir tres tipos bsicos de constantes en C++.11.Qu es una variable?12.Se deben declarar todas las variables que aparecen en un programa en C++?

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    53/67

    Unidad didctica. Elementos bsicos del lenguaje 53

    Prof. Margarita Pereira

    13.Cmo se les puede asignar valores iniciales a las variables en una declaracin de tipo?14.Supongamos que la versin de C++ puede reconocer slo los ocho primeros caracteres del

    nombre de un identificador, aunque los nombres de los identificadores puedan ser de

    longitud arbitraria. Cules de los siguientes pares de nombres de identificadores se

    considerarn como idnticos y cules se distinguirn?

    a) nombre, nombres

    b) direccion, Direccion

    c) identificador_1, identificador_2

    d) lista1, lista2

    e) respuesta, RESPUESTAf) cari, car_1

    15.Escribir declaraciones apropiadas y asignar los valores iniciales dados para cada grupo devariables:

    a) Variables en coma flotante: a = -8.2, b = 0.005

    b) Variables enteras: x = 129, y = 87, z = -22

    c) Variables de carcter: c1 = 'w', c2 = '&

    d) Variable entera larga: grande =123456789

    e) Variable de carcter: eol = carcter de nueva lnea

    16.Resuelva las siguientes asignaciones declarando sus variables:a) Asigne 20 a una variable entera llamada nota

    b) Asigne F a una variable char llamada sexo

    c) Asigne 1 a una variable bool llamada bisiesto

    d) Asigne 123.456 a una variable float llamada valor

    17.Resuelva las siguientes operaciones declarando sus variables:a) Asigne la suma de a ms b a una variable entera llamada ab) Asigne la resta de a menos b a una variable float llamada a

    c) Asigne la multiplicacin de a por b a una variable entera llamada a

    d) Asigne la divisin de a entre b a una variable float llamada a

    e) Asigne la divisin entera de a entre b a una variable entera llamada a

    18.Resuelva las siguientes operaciones con expresiones abreviadasa) Asigne la suma de a ms b a una variable entera llamada c

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    54/67

    Unidad didctica. Elementos bsicos del lenguaje 54

    Prof. Margarita Pereira

    b) Asigne la resta de a menos b a una variable float llamada c

    c) Asigne la multiplicacin de a por b a una variable entera llamada c

    d) Asigne la divisin de a entre b a una variable float llamada c

    e) Asigne la divisin entera de a entre b a una variable entera llamada c

    19.Resuelva las siguientes operaciones con expresiones abreviadasa) x = x + 1

    b) y = y 1

    c) x = x + 1 + y 1

    d) y = y 1 + x + 1

    e) x = x + 1 - y 1f) y = y 1 - x + 1

    20.Dados a = 1, b = 2 y c = 3, determine el valor final de las variables a, b y c en cadaexpresin independiente

    a) a = ++b + ++a

    b) b = b c++

    c) c = --c b++

    d) a = b > c

    e) b = c > b and a < b

    f) c = a * 2 > c or b * 2 > c

    Instructivo para la Instalacin del compilador DevCpp

    A continuacin te presento un instructivo muy sencillo y fcil de seguir para quepuedas instalar el compilador con el que vamos a trabajar en esta asignatura. Lo puedes seguirpaso a paso como si fuera una receta de cocina es muy fcil as que anmate e intntalo.

    Este instructivo fue realizado por la Coordinacin de la Asignatura de Programacin(integrada por los profesores: Rosa Daz, Olga Palma, Mara Auxiliadora Prez, GlennysClemant, Margarita Pereira y Giovanni Torrealba-Coordinador).

    Debes saber que este instructivo tambin ser publicado al comienzo de la asignatura en laseccin de RECURSOS del Curso Programacin en: http://seducla.ucla.edu.ve .

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    55/67

    Unidad didctica. Elementos bsicos del lenguaje 55

    Prof. Margarita Pereira

    Coordinacin del rea de Programacin

    Universidad Centroccidental Lisandro AlvaradoDecanato de Ciencias y Tecnologa

    Lapso 2008-I

    Programacin I

    Instructivo para la clase 1Elementos Bsicos de C++

    Contenido del Instructivo de la Unidad I

    Instalacin del compilador DevC++

    Configuracin del compilador DevC++

    Primer programa en C++

    Almacenamiento de los programas

    Pasos para realizar los programas

    Otras reglas a seguir

    Ejercicios propuestos

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    56/67

    Unidad didctica. Elementos bsicos del lenguaje 56

    Prof. Margarita Pereira

    Instalacin del compilador DevC++

    1. Ejecute el programade instalacin

    2. No instale sobre unaversin pre-existente (siya haba instalado antes)

    3. Escoja el lenguaje ausar durante la

    instalacin

    Instalacin del compilador DevC++

    4. Si est en acuerdo conlos trminos de la

    licencia, Acepte

    5. El t ipo de instalacinesFULL

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    57/67

    Unidad didctica. Elementos bsicos del lenguaje 57

    Prof. Margarita Pereira

    Instalacin del compilador DevC++

    6. Los archivos del compiladorse instalarn en la carpeta

    C:\Dev-Cpp

    7. La instalacin est enprogreso

    Instalacin del compilador DevC++

    8. Permita que todos losusuarios en el equipo tengan

    acceso al compilador

    9. Ha terminado con lainstalacin

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    58/67

    Unidad didctica. Elementos bsicos del lenguaje 58

    Prof. Margarita Pereira

    Configuracin del compilador DevC++

    Al ejecutar por primera vez el compilador DevC++, observar lossiguientes mensajes y opciones de configuracin... En caso de ya

    tenerlo instalado tambin puede configurarlo... Revise la informacinen estos dilogos para saber qu men se lo permite...

    1. Notificacin de versin beta...

    2. Seleccione el lenguaje Espaol(Latino Amrica), de manera que

    toda la informacin del compiladorse muestre en castellano

    Configuracin del compilador DevC++

    3. Indique que SI desea instalarla informacin de los headers

    files (esto le ser de ayudaoportunamente)

    4. YES... Ahora se crear un cachpara optimizar el rendimiento delcompilador

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    59/67

    Unidad didctica. Elementos bsicos del lenguaje 59

    Prof. Margarita Pereira

    Configuracin del compilador DevC++

    5. Ha terminado de configurarel compilador DevC++...

    Presione el botn OK

    6. Esto es lo que ver...Es la interfaz de desarrollo integrado (IDE):

    Puede escribir los programas Compilarlos y correrlos Probarlos y depurarlos Organizarlos... todo eso es la integracin (IDE)

    Primer programa en C++

    Este primer programa lo que hace es pedir 4 notas parciales de unestudiante y calcular la nota final (la suma de las notas parciales)

    Anlisis del problemaEntradas: las 4 notas (N1, N2, N3, N4)

    Proceso: Acumulacin (suma)

    Salidas: la nota final (NF)Ejemplo:

    Sean las notas N1=20, N2=15, N3=20, N4=10El proceso es NF=20+15+20+10La nota final ser 65

  • 8/4/2019 Elementos-Bsicos-Lenguaje-Programacin

    60/67

    Unidad didctica. Elementos bsicos del lenguaje 60

    Prof. Margarita Pereira

    Primer programa en C++

    Este primer programa lo que hace es pedir 4 notas parciales de unestudiante y calcular la nota final ( la suma de las notas parciales)

    Use este botn (Nuevo cdigo fuente) para crearel archivo donde escribir su programa

    Escriba el cdigo del programa

    Primer programa en C++

    El mismo programa anteriorpero documentado con notasexplicativas, bien sea una nota de slo 1 l nea (comienzan con //),o de mltiples lneas (encerradas entre los carac