C++: Tipos básicos, funciones, estructuras de control, etc. - ALIPSO.COM: Monografías, resúmenes, biografias y tesis gratis.
Aprende sobre marketing online, desarrollo de sitios web gratis en Youtube
Suscribite para recibir notificaciones de nuevos videos:
Martes 16 de Abril de 2024 |
 

C++: Tipos básicos, funciones, estructuras de control, etc.

Imprimir Recomendar a un amigo Recordarme el recurso

Programación. Lenguaje C++. Operaciones entre tipos básicos. Declaración y definición de funciones. Función especial main. Estructuras de control. Ejecución condicional: IF. Ciclo, la estructura WHILE. Expresiones multivaluadas: SWITCH.

Agregado: 17 de JULIO de 2003 (Por Michel Mosse) | Palabras: 1224 | Votar |
2 votos | Promedio: 1
| Sin comentarios | Agregar Comentario
Categoría: Apuntes y Monografías > Computación > Programación >
Material educativo de Alipso relacionado con C++ Tipos básicos funciones estructuras control etc
  • Radio Escolar- Conceptos Basicos:
  • Preguntas y respuestas conceptos basicos de seguridad social:
  • Metodos y tipos de aborto: Regulaciones y posturas de la Iglesia.

  • Enlaces externos relacionados con C++ Tipos básicos funciones estructuras control etc

    C++: Tipos básicos, funciones, estructuras de control, etc.

    En la segunda mitad de la materia vamos a trabajar sobre el paradigma imperativo, utilizando el lenguaje C++. Este apunte incluye un breve resumen de la sintaxis básica de C++ y sus tipos primitivos. Aquí va.

    Tipos básicos

    En Hugs vimos que existían 4 tipos básicos: Int, Float, Bool y Char. Podíamos definir funciones que recibieran o devolvieran valores de dichos tipos, y además podíamos definir otros tipos a partir de ellos.

    En C++, vamos a trabajar con los tipos básicos: int, float, bool y char. Estos tipos son equivalentes a los tipos del mismo nombre en Hugs.

    Es un costumbre muy arraigada entre los programadores de C (en el cual no existe el tipo bool) utilizar constantes enteras para representar valores booleanos. Esta convención nos define que el valor 0 (cero) es equivalente a False y cualquier otro número (generalmente -1) representa True. Veremos más adelante estructuras de control cuyo comportamiento depende del resultado de evaluar expresiones booleanas, que respetan esta convención.

    Operaciones entre tipos básicos

    Entre dos valores de tipos int y float podemos realizar las operaciones aritméticas habituales[1]:

    + - * % (resto de la división entera) / (división)

    Además, podemos comparar dos valores, obteniendo una expresión booleana (su resultado será 0 o un número distinto de 0, según la expresión sea falsa o verdadera, respectivamente):

    = = (igualdad, utilizando 2 signos de "igual")

    < (menor)

    > (mayor)

    < = (menor o igual ... les queda como ejercicio imaginarse el mayor o igual)

    != (distinto)

    Dos valores booleanos o expresiones lógicas, se pueden combinar con los operadores lógicos:

    && (and, "y" lógico)

    || (or, "o" lógico).

    Expresamos la negación, además, con el signo de exclamación:

    ! (not)

    Declaración y definición de funciones

    Al declarar una función en C++, de la misma forma que hacíamos en Hugs, debemos darle un nombre e indicar cuántos y de qué tipo son los parámetros que recibe y de qué tipo es el valor que devuelve.

    En C++ declaramos una función de la siguiente manera:

    <tipo del valor devuelto por la función> nombre (<lista de parámetros que recibe>)[2]

    Los parámetros que recibe la función se separan con comas, y cada parámetro debe tener la siguiente forma:

    <tipo del parámetro> nombre

    Así, las siguientes son declaraciones posibles de funciones:

    • int max(int a, int b)
    • char SexoPersona(int dni_persona)
    • float producto(float x, int y)
    • int dame_un_numero_cualquiera( )

    Una vez que declaramos una función, debemos indicar qué hace o cómo calcula el valor que devuelve a partir de los valores recibidos. O sea debemos implementar la función, debemos escribir el cuerpo de la función. El mismo consta de una secuencia de operaciones encerradas entre llaves

    int max (int a, int b)

    {

    ... secuencia de operaciones...

    }

    Para indicar el valor de retorno de la función, utilizamos la sentencia return <valor>:

    int max (int a, int b)

    {

    ...secuencia de operaciones que calculan el máximo entre a y b y lo guardan en una variable c ...

    return c;

    }

    Es importante notar que la sentencia return es un punto de salida de la función, o sea, una vez que el programa encuentra una instrucción de este tipo, termina la ejecución de la función actual y pasa el control a la función que la llamó.

    IMPORTANTE: toda sentencia en C++ termina con un punto y coma (;). Esto le permite al compilador C++ saber cuándo termina una y empieza la siguiente.

    DEFINICION:

    Llamaremos bloque a:

            una sentencia (las sentencias terminan en ‘;').

            una secuencia de sentencias, encerradas entre llaves

    { sentencia1; sentencia2; sentencia3; }

    Los bloques pueden anidarse unos dentro de otros.

    Función especial main

    Para poder crear un programa en C, es necesario que haya una función especial definida. Esta función se llama main y es el punto de entrada o inicio de ejecución del programa, es decir, es el lugar por donde va a empezar la ejecución de nuestro programa. La declaración más sencilla (que alcanza para los programas que vamos a realizar) es la siguiente:

    int max ()

    {

    sentecia1;

    sentencia2;

    }

    Entonces el programa va a comenzar la ejecución con la sentencia1, luego la sentencia2, y así sucesivamente. En el caso en que no se defina una función con el nombre de main, el compilador de C que estemos usando, no nos va a permitir crear el programa ejecutable, y nos lo informará con un error del estilo: "Error: undefined reference to ‘main'".

    Estructuras de control

    Las estructuras de control nos permiten alterar el flujo de ejecución de las sentencias que componen el cuerpo de una función. Sin ellas, sólo podríamos ejecutar las líneas de un programa una a una en orden lineal, lo que no nos permitiría computar cosas demasiado interesantes!

    Ejecución condicional: IF

    Nos permite decidir, a partir del resultado de evaluar una expresión booleana, si ejecutar o no un bloque determinado, u optar entre 2 bloques posibles.


    Sintaxis:

    if (<expresión booleana>)
    <
    bloque a ejecutar cuando la expresión es verdadera>

    else

    <bloque a ejecutar cuando la expresión es falsa>

    La sentencia else es opcional, puede utilizarse o no. En el caso de no utilizarlo, cuando la expresión evaluada sea falsa la ejecución continuará con la sentencia inmediatamente posterior al if.

    Ejemplo:

    int max (int a, int b)

    {

    int c;

    if (a>b)

    c = a;

    else

    c = b;

    return c;

    }

    Ciclo, la estructura WHILE

    Nos permite repetir la ejecución de un bloque hasta tanto una condición booleana se vuelva falsa.

    Sintaxis:

    while ( <expresión booleana> )

    <bloque>

    Ejemplo:

    int factorial (int n)

    {

    int res = 1;

    while ( n > 1 )

    {

    res = res * n;

    n = n - 1;

    }

    return res;

    }

    Expresiones multivaluadas: SWITCH

    Nos permite decidir entre diferentes bloques a ejecutar según el valor de una expresión.

    Sintaxis:

    switch ( <expresión ordinal> )

    {

    case <valor 1>: <bloque1>; break;

    case <valor 2>: <bloque2>; break;

    .

    .

    .

    case <valor n>: <bloque n>; break;

    default: <bloque>

    }

    Es muy importante la inclusión de la sentencia break luego de cada bloque, ya que es la que indica que ha terminado la ejecución de las instrucciones correspondientes a esa guarda. La falta de la misma, provocará que se siga ejecutando el siguiente bloque hasta que encuentre un break o el fin del switch (representado por la llave que cierra).

    La guarda default es opcional y se ejecuta cuando no ha dado positiva ninguna comparación anterior.



    [1] De hecho también podemos hacerlo con valores de tipo char, que no es más que un subconjunto del tipo int, pero por claridad no lo vamos a hacer.

    [2] Nótese que, contrario a lo que pasaba en Hugs, en C++ las funciones no deben empezar necesariamente en minúscula.


    Votar

    Ingresar una calificación para del 1 al 10, siendo 10 el máximo puntaje.

    Para que la votación no tenga fraude, solo se podrá votar una vez este recurso.

    Comentarios de los usuarios


    Agregar un comentario:


    Nombre y apellido:

    E-Mail:

    Asunto:

    Opinión:



    Aún no hay comentarios para este recurso.
     
    Sobre ALIPSO.COM

    Monografias, Exámenes, Universidades, Terciarios, Carreras, Cursos, Donde Estudiar, Que Estudiar y más: Desde 1999 brindamos a los estudiantes y docentes un lugar para publicar contenido educativo y nutrirse del conocimiento.

    Contacto »
    Contacto

    Teléfono: +54 (011) 3535-7242
    Email:

    Formulario de Contacto Online »