SlideShare una empresa de Scribd logo
1 de 26
Grupo 248
Docente: Ma. Eugenia Morales M.




                             Algoritmos
                          Tipos de datos
                         Identificadores
                 Operadores y prioridad
            Instrucciones de Asignación
                   - Entrada y Salida de
                             Información
                     Ejercicios de lógica

        Institución Universitaria de Envigado
               Facultad de Ingenierías
 Los datos y el tipo de datos que se define,
  determina un conjunto de valores y las
  operaciones sobre estos valores.
 Los datos pueden ser:
    ◦ Simples
    ◦ Compuestos




Datos informáticos
   Numéricos Enteros: o Int representan un subconjunto
    finito de los números enteros. En máquinas de 8 bits su
    rango va desde -32.768 a 32.767 y en máquinas de 32
    bits: su rango va desde el -2.147.483.648 al
    2.147.483.647,
   Carácter: o Char El tipo de dato carácter es un digito
    individual el cual se puede representar como numéricos (0
    al 9), letras (a-z) y símbolo ($,_) según la tabla ASCII
    (American Standard Code for Information Interchange) y
    UNICODE.
   Lógicos: o Booleano Este tipo de dato se emplea para
    valores lógicos True – False.




Datos Simples
   Numéricos Reales (float): almacenan
    números muy grandes que poseen parte
    entera y parte decimal. Su rango incluye los
    positivos y los negativos y admite números
    de 32 (float) y 64 bits (double).
   Cadena de caracteres (String) es una
    sucesión de caracteres (letras, números u
    otros signos o símbolos). Se almacenan en
    forma dinámica (pueden alterar su longitud
    durante el tiempo de ejecución = listas
    dinámicas), o en forma estática (su longitud
    es fija a lo largo del tiempo de ejecución =
    arrays).


Datos Compuestos
   Un identificador es el nombre que se le da a cada uno de los
    elementos incluidos en un algoritmo.
   Existen identificadores predefinidos que forman parte del
    lenguaje algorítmico, y los identificadores definidos por el
    programador a través de variables y constantes.
   En pseudocódigo, todo identificador debe cumplir unas reglas de
    sintaxis:
    ◦ Consta de uno o más caracteres.
    ◦ El primer carácter debe ser una letra o el carácter subrayado (_)
    ◦ Las letras pueden ser minúsculas o mayúsculas del alfabeto inglés.
    ◦ No pueden existir dos identificadores iguales.
    ◦ Un identificador no puede contener caracteres especiales, salvo el
      carácter subrayado (_). Es importante resaltar que las vocales no
      pueden llevar tilde ni diéresis.
    ◦ Un identificador en lo posible debe ser un nombre nemotécnico, esto
      es, utilización de letras abreviadas que den cuenta de qué tipo de dato
      almacena, por ejemplo: char para carácter.



Identificadores…
   De acuerdo a lo que has aprendido sobre identificadores, indica de
     los siguientes cuáles son identificadores válidos:
      1. Puerta21
      2. 3tres
      3. 2007
      4. Helicóptero
      5. COCHE_52
      6. **motocicleta**
      7. __platillo__
      8. cas-ti-llo
      9. ¡Fiesta!
      10._*_*_
      11.47_ejercicio
      12.Costa Rica
      13.aErOnAvE


Ejercicio con IDENTIFICADORES
Variables                               Constantes
   Una variable representa a un         Una constante representa a un
    espacio de memoria en el cual         valor (dato almacenado en
    se puede almacenar un dato            memoria) que no puede cambiar
    que cambia tantas veces como          durante la ejecución de un
    sea necesario durante la              programa.
    ejecución de un programa.            Para expresar una constante con
                                          un nombre, la constante debe
   El    programador,     cuando
                                          ser declarada previamente.
    desarrolla un programa debe
                                         Todas las constantes que se
    decidir:
                                          declaran en un programa son
    ◦ Cuantas son las variables que
                                          definidas     de     la   misma
      el programa necesita para
                                          forma, indicando de cada una de
      realizar las tareas que se le
                                                        ellas:
      han encomendado.
                                          el identificador y el valor que
    ◦ El tipo de dato que puede           simboliza.
      almacenar cada una de ellas.
                                         En pseudocódigo, para declarar
    ◦ El    identificador de   cada       una constante, vamos a utilizar
      variable.                           la sintaxis:
   En pseudocódigo para declarar           ◦ Const <nombre_de_la_constante>
    una variable utilizaremos la              = <expresión>

    sintáxis:
    ◦ <nombre-variable> = <expresión>
16. Tipo de nutriente alimentario
   De la siguiente información,
    defina qué tipo de dato                 17. Carrera o programa elegido
    almacena      y    escriba   un             para estudiar
    identificador para cada uno:            18. Nivel socio-económico
     1.    Número de teléfono               19. Ocupación      (empleado      –
     2.    Cédula de ciudadanía                 desempleado)
     3.    Código de producto               20. Profesión
     4.    Nombre de persona
     5.    Dirección                        21. Tipo de vivienda
     6.    Valor de la hora                 22. Opción (de una lista de
     7.    Salario básico                       opciones)
     8.    Salario Neto                     23. Respuesta (Si – No)
     9.    Sexo                             24. Tipo de procesador (PC)
     10.   Edad
                                            25. URL
     11.   Valor de compra propiedad raíz
     12.   Estado (activo – inactivo)       26. Número celular
     13.   Email                            27. Área     (de     una     figura
     14.   Nombre de usuario                    geométrica)
     15.   Estado civil                     28. Resultado (de una operación
                                                matemática)
                                            29. Nomenclatura
                                            30. Capacidad de memoria RAM


Ejercicios con identificadores de variables:
   En un programa, el tipo de un dato determina las
    operaciones que se pueden realizar con él.
   Los operadores pueden ser aritméticos, lógicos o
    relacionales y las expresiones son combinaciones de
    constantes, variables, símbolos de operación,
    paréntesis y nombres de funciones especiales
   Una expresión siempre consta de operandos y
    operadores.
   En una expresión los paréntesis definen la prioridad
    de solución de la expresión, o sea, el orden de
    cálculo.
   Los operadores y las expresiones según el tipo de
    dato que manipulan se clasifican en:
    ◦ Aritméticas
    ◦ Lógicas
    ◦ Carácter




Operadores y expresiones
Operador              Acción               Ejemplo

      -       Resta               x = 5 - 3; // x vale 2


      +       Suma                x = 2 + 3; // x vale 5


      *       Multiplicación      x = 2 * 3; // x vale 6


      /       División            x = 6 / 2; // x vale 3


     %        Módulo              x = 5 % 2; // x vale 1


     --       Decremento          x = 1; x--; // x vale 0


     ++       Incremento          x = 1; x++; // x vale 2




Operadores aritméticos y prioridad:
Mayor precedencia

             Agrupacion                () []
             Exponencial                 ^
   Multiplicación, División y Módulo   * / %
            Suma y Resta                + -
         Menor precedencia




Precedencia operadores aritméticos
Operador       Acción       Expresiones en lenguaje natural Formalización

                                           P^Q
                                         P pero Q
                                     P sin embargo Q
&& ^       Conjunción (Y)            P no obstante Q
                                      P a pesar de Q
                                                               P^Q

                                  o P o Q o ambas cosas

|| v       Disyunción (O)             al menos P o Q
                                   como mínimo P o Q
                                                               PvQ

                                            no P

 ! ¬         Negación                  es falso que P
                                       no es cierto P
                                                                 ¬P

                                      si P entonces Q
                                            Q si P
  →         Implicación            Q es necesario para P
                                   P es suficiente para Q
                                                               P→Q



Operadores lógicos
Mayor precedencia
         Negación         !
        Conjunción       &&
        Disyunción       ||
        Implicación      →
     Menor precedencia




Precedencia de operadores lógicos
Operador                   Acción

              >           Mayor que

             >=           Mayor o igual que

              <           Menor que

             <=           Menor o igual que

             ==           Igual

             !=           Distinto

                      < <= > >=
      Mayor precedencia

    Menor precedencia   == !=
Operadores relacionales
Mayor precedencia

                ()
            ^ ++ -- -
             * / % !
             + - &&
       || > < >= <= != ==
           Menor precedencia




Precedencia de operadores:
Regla Básica: Operando   OPERADOR       Operando

   A<B^C>D                        b^c<e
   Y >= X                         b || c > d
   i++; j - -;                    a<b>c
   a = b || c = d
                                   x^y^z=2
   i ← i + 1;
   h * m = p;                     k || h – 2
   k / 2 = j;                     ¬P + 5
   p (m * -2) + 5 = z;            h ^q-p
   a = b ^ c <> d                 (e – f || g) * s
   T ← h % 2;
                                   2+t^s*3
   Y ← (m ^ 2) + (n ** 2);
   ¬P ^ Q || ¬P
                                   T^5*k

       CORRECTO                     INCORRECTO

Manejo de expresiones con operadores:
   Representar el siguiente enunciado con
    conectores lógicos:
    ◦ “Si no pago el recibo de la luz, entonces me
      cortarán la corriente eléctrica, y Si pago la luz,
      entonces me quedaré sin dinero o tengo que
      pedir prestado, pero Si me quedo sin dinero y
      tengo que pedir prestado, entonces no puedo
      pagar la deuda”
    ◦ Donde:
      P: Pago la luz.
      Q: Me cortarán la corriente eléctrica.
      R: Me quedaré sin dinero.
      S: Tengo que pedir prestado.
      T: Puedo pagar la deuda.


Taller de operadores (1)
   Evaluar la siguiente expresión matemática
    teniendo en cuenta la precedencia de los
    signos:
 ( 5 + 10 ) * 3                      = 45
 2 [ 3 + ( 6 * 5 + 2 ) ]             = 70
 -5 * [ (-3 * 2 )  (-3) + 1 ]       = -15
   [ – [ -13 + ( 24 – 68 ) ] – ( -48 + 95) ] – (2 ^ 2)= 6




Taller de operadores (2)
 De la siguiente afirmación “Andrés es padre de
  Bernardo y éste es padre de Cecilia” se obtienen
  las siguientes proposiciones:
 P: Andrés es descendiente de Bernardo
 Q: Bernardo es descendiente de Andrés
 R: Cecilia es descendiente de Bernardo
 S: Cecilia es descendiente de Andrés
 Asignar los valores a las siguientes fórmulas de
  las tablas de verdad y explicar porque:
    ◦   Proposición    Valor       Porque
    ◦   ¬P
    ◦   ¬Q
    ◦   P^Q
    ◦   ¬P ^ Q || ¬P
    ◦   P ^ ¬Q




Taller de operadores (3)
   Suponiendo declaradas y asignadas las
    variables:
    ◦ i=8, j=5, x=0.005, y=-0.01
   Indique los valores de las siguientes
    expresiones:
    ◦    (3 * i – 2 * j) % (2 * i – j)
    ◦    2 * ( (i / 5) + (4 * ( j – 3 ) ) % (i + j – 2) )
    ◦   -(i + j) /2
    ◦   i++;
    ◦   j--;
    ◦   (x > y) && (i > 0) || (j < 5)
    ◦   (x > y) || (i > 0) && (j < 5)

Taller de operadores (4)
   En programación, una instrucción de asignación
    consiste en asignar el resultado de la
    evaluación de una expresión a una variable.
   En pseudocódigo, la sintaxis para escribir una
    asignación es:
    ◦ <nombre_de_la_variable> ← <expresión>
   El valor (dato) que se obtiene al evaluar la
    <expresión> es almacenado en la variable que
    se indique.
   En una asignación, la variable debe ser del
    mismo tipo que la expresión asignada.
   Una asignación permite cambiar el valor (dato)
    almacenado en una variable.

Asignación:
 Una instrucción de entrada (o simplemente
  entrada) consiste en asignar a una o más
  variables, uno o más valores (datos) recibidos
  desde el exterior. Normalmente, los datos son
  recogidos desde la entrada estándar (el teclado),
  pero, también existen otros dispositivos de
  entrada (el ratón, el escáner,...).
 En pseudocódigo, la sintaxis de una instrucción
  de entrada es:
    ◦ Leer(<nombre_de_la_variable_1>,
       <nombre_de_la_variable_2>,
       ...,
       <nombre_de_la_variable_n> )
    ◦ También se puede escribir como:
      leer( <lista_de_variables> )


Entrada de Datos
   En programación, una instrucción de salida
    consiste en llevar hacia el exterior los valores
    (datos) obtenidos de la evaluación de una
    lista de expresiones.
   Normalmente, los datos son enviados a la
    salida estándar (la pantalla), pero, también
    existen otros dispositivos de salida (la
    impresora, el plotter,...).
   En pseudocódigo, la sintaxis de una
    instrucción de salida es:
    ◦ escribir( <expresión_1>, ..., <expresión_n> )
    ◦ También se puede escribir como:
       escribir( <lista_de_expresiones> )


Salida de datos
   Tenga en cuenta:          Elaborar un programa que
    ◦ Datos de E/S             imprima el mensaje “Este
    ◦ Declaración e            computador se apagará en cinco
                               minutos”.
      inicialización de
      variables.              Hacer un programa que imprima
                               el resultado de multiplicar 2 * 5.
    ◦ Inicio – proceso –
                              Elaborar un programa que
      fin
                               muestre IUE, Facultad de
    ◦ Prueba de                Ingenierías y su nombre.
      Escritorio              Elaborar un programa que
                               muestre los pasos de un
                               algoritmo.
                              Elaborar un programa que
                               imprima los primeros 10 números
                               pares.
                              Elaborar un programa que
                               imprima los números del 1 al 10
                               en orden inverso.
Ejercicios con Algoritmos: salida de datos
   Elaborar   un   programa   que       Elaborar un programa que de
    ingrese fecha de nacimiento y         acuerdo al tiempo de parqueo de
    fecha actual e imprima la edad        un vehículo, sabiendo que la
    aproximada.                           hora cuesta $3000, calcule e
   Elaborar   un  programa    que        imprima el valor a pagar y la
    ingrese un número e imprima su        placa del vehículo.
    cubo.                                Elaborar un programa que de
   Hacer un programa que ingrese         acuerdo a un año dado calcule si
    dos números e imprima su              es bisiesto o no.
    suma.                                Elaborar un programa que lea el
   Hacer un programa que lea un          lado de un cuadrado, calcule e
    número e imprima su cuadrado.         imprima su área.
   Elaborar   un   programa    que      Elaborar un programa que lea el
    ingrese valor hora y número de        lado de un triangulo equilátero y
    horas trabajadas de una persona       calcule e imprima su área.
    e imprima su salario básico          Elaborar un programa que lea un
                                          número e indique si es primo o
                                          no.




Ejercicios con Algoritmos: E/S de datos
   Ejercicios de diseño de algoritmos en
    pseudocódigo, en:
    http://www.carlospes.com/ejercicios_de_algorit
    mos/
   Identificadores, variables y constantes en:
    http://es.wikipedia.org/wiki/Identificador
   Joyanés Aguilar, Luis. Fundamentos de
    programación: Algoritmos y Estructura de datos.
    Ed. McGrawHill.




Fuentes de la información:

Más contenido relacionado

La actualidad más candente

Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...David Zapateria Besteiro
 
Clase 3introduccion a_lenguace_c
Clase 3introduccion a_lenguace_cClase 3introduccion a_lenguace_c
Clase 3introduccion a_lenguace_ckikeMerck
 
Funciones lenguaje c modulo4
Funciones lenguaje c modulo4Funciones lenguaje c modulo4
Funciones lenguaje c modulo4flaquita_dany
 
Algoritmia Iiparte
Algoritmia IiparteAlgoritmia Iiparte
Algoritmia Iiparteoscar
 
Primeros Pasos Con VS2005
Primeros Pasos Con VS2005Primeros Pasos Con VS2005
Primeros Pasos Con VS2005programacionunc
 
Java - Sintaxis Básica 2015
Java - Sintaxis Básica 2015Java - Sintaxis Básica 2015
Java - Sintaxis Básica 2015Renny Batista
 
Presentacion concurso tema 01
Presentacion concurso tema 01Presentacion concurso tema 01
Presentacion concurso tema 01Maury Lugo
 
Capitulo 2 tipos de datos en c
Capitulo 2 tipos de datos en cCapitulo 2 tipos de datos en c
Capitulo 2 tipos de datos en cecastelocc
 
Estructura sintactica de los lenguajes de programacion
Estructura sintactica de los lenguajes de programacionEstructura sintactica de los lenguajes de programacion
Estructura sintactica de los lenguajes de programacionandreinagracielarojasadam
 
CURSO DE PROGRAMACION BASICA - Cap 6
CURSO DE PROGRAMACION BASICA - Cap 6CURSO DE PROGRAMACION BASICA - Cap 6
CURSO DE PROGRAMACION BASICA - Cap 6Daniel Irene
 
Estructura sintactica de los lenguajes de programacion y bases de datos
Estructura sintactica de los lenguajes de programacion y bases de datosEstructura sintactica de los lenguajes de programacion y bases de datos
Estructura sintactica de los lenguajes de programacion y bases de datosspedy93
 

La actualidad más candente (19)

Módulo 5 (sin estilo)
Módulo 5 (sin estilo)Módulo 5 (sin estilo)
Módulo 5 (sin estilo)
 
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...
 
Clase 3introduccion a_lenguace_c
Clase 3introduccion a_lenguace_cClase 3introduccion a_lenguace_c
Clase 3introduccion a_lenguace_c
 
Mod2ud1 2
Mod2ud1 2Mod2ud1 2
Mod2ud1 2
 
Conceptos basicos
Conceptos basicosConceptos basicos
Conceptos basicos
 
Funciones lenguaje c modulo4
Funciones lenguaje c modulo4Funciones lenguaje c modulo4
Funciones lenguaje c modulo4
 
Algoritmia Iiparte
Algoritmia IiparteAlgoritmia Iiparte
Algoritmia Iiparte
 
Primeros Pasos Con VS2005
Primeros Pasos Con VS2005Primeros Pasos Con VS2005
Primeros Pasos Con VS2005
 
Java - Sintaxis Básica 2015
Java - Sintaxis Básica 2015Java - Sintaxis Básica 2015
Java - Sintaxis Básica 2015
 
Presentacion concurso tema 01
Presentacion concurso tema 01Presentacion concurso tema 01
Presentacion concurso tema 01
 
Programacion
ProgramacionProgramacion
Programacion
 
Carlos villalovos
Carlos villalovosCarlos villalovos
Carlos villalovos
 
Capitulo 2 tipos de datos en c
Capitulo 2 tipos de datos en cCapitulo 2 tipos de datos en c
Capitulo 2 tipos de datos en c
 
Recordatorio
RecordatorioRecordatorio
Recordatorio
 
Estructura sintactica de los lenguajes de programacion
Estructura sintactica de los lenguajes de programacionEstructura sintactica de los lenguajes de programacion
Estructura sintactica de los lenguajes de programacion
 
Wilfreddy barco
Wilfreddy barcoWilfreddy barco
Wilfreddy barco
 
CURSO DE PROGRAMACION BASICA - Cap 6
CURSO DE PROGRAMACION BASICA - Cap 6CURSO DE PROGRAMACION BASICA - Cap 6
CURSO DE PROGRAMACION BASICA - Cap 6
 
Logica subprogramas
Logica subprogramasLogica subprogramas
Logica subprogramas
 
Estructura sintactica de los lenguajes de programacion y bases de datos
Estructura sintactica de los lenguajes de programacion y bases de datosEstructura sintactica de los lenguajes de programacion y bases de datos
Estructura sintactica de los lenguajes de programacion y bases de datos
 

Similar a Algoritmos y tipos de datos básicos

Tipos de dato y expresiones en C++
Tipos de dato y expresiones en C++Tipos de dato y expresiones en C++
Tipos de dato y expresiones en C++Obmaro García
 
Algoritmos TECNICO EN DESARROLLO DE SOFTWARE
Algoritmos TECNICO EN DESARROLLO DE SOFTWAREAlgoritmos TECNICO EN DESARROLLO DE SOFTWARE
Algoritmos TECNICO EN DESARROLLO DE SOFTWAREPedro Alvarez
 
Estructura De Un Programa
Estructura De Un ProgramaEstructura De Un Programa
Estructura De Un ProgramaLisb
 
Guía de Algoritmo y Programación en C
Guía de Algoritmo y Programación en CGuía de Algoritmo y Programación en C
Guía de Algoritmo y Programación en CPablo Chiesa
 
TUTORIAL LENGUAJE C
TUTORIAL LENGUAJE CTUTORIAL LENGUAJE C
TUTORIAL LENGUAJE CJesus Agreda
 
TUTORIAL DE LENGUAJE C
TUTORIAL DE LENGUAJE CTUTORIAL DE LENGUAJE C
TUTORIAL DE LENGUAJE CJesus Agreda
 
Ii corte algoritmo_tr_1era_clase
Ii corte algoritmo_tr_1era_claseIi corte algoritmo_tr_1era_clase
Ii corte algoritmo_tr_1era_clasetammyrodriguez2010
 
Logica computacional conceptos basicos
Logica computacional conceptos basicosLogica computacional conceptos basicos
Logica computacional conceptos basicosmoni26011993
 
Unidad II Datos y Entidades Primitivas
Unidad II Datos y Entidades PrimitivasUnidad II Datos y Entidades Primitivas
Unidad II Datos y Entidades PrimitivasAverkleyCH
 
3.2.- Identificadores, Variables y Constantes
3.2.- Identificadores, Variables y Constantes3.2.- Identificadores, Variables y Constantes
3.2.- Identificadores, Variables y ConstantesYenny Salazar
 
Tema 1-2 identificadores - variable y constante
Tema 1-2 identificadores - variable y constanteTema 1-2 identificadores - variable y constante
Tema 1-2 identificadores - variable y constanteRufi Flores
 

Similar a Algoritmos y tipos de datos básicos (20)

Tipos de dato y expresiones en C++
Tipos de dato y expresiones en C++Tipos de dato y expresiones en C++
Tipos de dato y expresiones en C++
 
Algoritmos TECNICO EN DESARROLLO DE SOFTWARE
Algoritmos TECNICO EN DESARROLLO DE SOFTWAREAlgoritmos TECNICO EN DESARROLLO DE SOFTWARE
Algoritmos TECNICO EN DESARROLLO DE SOFTWARE
 
Pascal
PascalPascal
Pascal
 
Estructura De Un Programa
Estructura De Un ProgramaEstructura De Un Programa
Estructura De Un Programa
 
Unidad 1.1 PROGRAMACION I
Unidad 1.1  PROGRAMACION IUnidad 1.1  PROGRAMACION I
Unidad 1.1 PROGRAMACION I
 
Introducción
IntroducciónIntroducción
Introducción
 
Introducción
IntroducciónIntroducción
Introducción
 
Guía de Algoritmo y Programación en C
Guía de Algoritmo y Programación en CGuía de Algoritmo y Programación en C
Guía de Algoritmo y Programación en C
 
Tecnología Periodo 2.pdf
Tecnología Periodo 2.pdfTecnología Periodo 2.pdf
Tecnología Periodo 2.pdf
 
Programacion kmi
Programacion kmiProgramacion kmi
Programacion kmi
 
TUTORIAL LENGUAJE C
TUTORIAL LENGUAJE CTUTORIAL LENGUAJE C
TUTORIAL LENGUAJE C
 
TUTORIAL DE LENGUAJE C
TUTORIAL DE LENGUAJE CTUTORIAL DE LENGUAJE C
TUTORIAL DE LENGUAJE C
 
Ii corte algoritmo_tr_1era_clase
Ii corte algoritmo_tr_1era_claseIi corte algoritmo_tr_1era_clase
Ii corte algoritmo_tr_1era_clase
 
Logica computacional conceptos basicos
Logica computacional conceptos basicosLogica computacional conceptos basicos
Logica computacional conceptos basicos
 
Unidad II Datos y Entidades Primitivas
Unidad II Datos y Entidades PrimitivasUnidad II Datos y Entidades Primitivas
Unidad II Datos y Entidades Primitivas
 
3.2.- Identificadores, Variables y Constantes
3.2.- Identificadores, Variables y Constantes3.2.- Identificadores, Variables y Constantes
3.2.- Identificadores, Variables y Constantes
 
Pascal
PascalPascal
Pascal
 
Tema 1-2 identificadores - variable y constante
Tema 1-2 identificadores - variable y constanteTema 1-2 identificadores - variable y constante
Tema 1-2 identificadores - variable y constante
 
Introduccion c
Introduccion cIntroduccion c
Introduccion c
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 

Más de memorales_IUE

Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamientomemorales_IUE
 
Taller logica ciclos y seleccion multiple
Taller logica ciclos y seleccion multipleTaller logica ciclos y seleccion multiple
Taller logica ciclos y seleccion multiplememorales_IUE
 
Taller logica ciclo mq centinela 2013
Taller logica ciclo mq  centinela 2013Taller logica ciclo mq  centinela 2013
Taller logica ciclo mq centinela 2013memorales_IUE
 
Taller condicionales marzo22
Taller condicionales marzo22Taller condicionales marzo22
Taller condicionales marzo22memorales_IUE
 
Logica condicionales
Logica condicionalesLogica condicionales
Logica condicionalesmemorales_IUE
 
Logica terminosbasicos presentacion
Logica terminosbasicos presentacionLogica terminosbasicos presentacion
Logica terminosbasicos presentacionmemorales_IUE
 
Logica consulta terminos basicos
Logica consulta terminos basicosLogica consulta terminos basicos
Logica consulta terminos basicosmemorales_IUE
 

Más de memorales_IUE (12)

Arreglos busquedas
Arreglos busquedasArreglos busquedas
Arreglos busquedas
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamiento
 
Arreglos
ArreglosArreglos
Arreglos
 
Taller logica ciclos y seleccion multiple
Taller logica ciclos y seleccion multipleTaller logica ciclos y seleccion multiple
Taller logica ciclos y seleccion multiple
 
Taller logica ciclo mq centinela 2013
Taller logica ciclo mq  centinela 2013Taller logica ciclo mq  centinela 2013
Taller logica ciclo mq centinela 2013
 
Ciclos
CiclosCiclos
Ciclos
 
Taller condicionales marzo22
Taller condicionales marzo22Taller condicionales marzo22
Taller condicionales marzo22
 
Logica condicionales
Logica condicionalesLogica condicionales
Logica condicionales
 
Logica terminosbasicos presentacion
Logica terminosbasicos presentacionLogica terminosbasicos presentacion
Logica terminosbasicos presentacion
 
Logica consulta terminos basicos
Logica consulta terminos basicosLogica consulta terminos basicos
Logica consulta terminos basicos
 
Tipos de algoritmos
Tipos de algoritmosTipos de algoritmos
Tipos de algoritmos
 
Logica algoritmos
Logica algoritmosLogica algoritmos
Logica algoritmos
 

Algoritmos y tipos de datos básicos

  • 1. Grupo 248 Docente: Ma. Eugenia Morales M. Algoritmos Tipos de datos Identificadores Operadores y prioridad Instrucciones de Asignación - Entrada y Salida de Información Ejercicios de lógica Institución Universitaria de Envigado Facultad de Ingenierías
  • 2.  Los datos y el tipo de datos que se define, determina un conjunto de valores y las operaciones sobre estos valores.  Los datos pueden ser: ◦ Simples ◦ Compuestos Datos informáticos
  • 3. Numéricos Enteros: o Int representan un subconjunto finito de los números enteros. En máquinas de 8 bits su rango va desde -32.768 a 32.767 y en máquinas de 32 bits: su rango va desde el -2.147.483.648 al 2.147.483.647,  Carácter: o Char El tipo de dato carácter es un digito individual el cual se puede representar como numéricos (0 al 9), letras (a-z) y símbolo ($,_) según la tabla ASCII (American Standard Code for Information Interchange) y UNICODE.  Lógicos: o Booleano Este tipo de dato se emplea para valores lógicos True – False. Datos Simples
  • 4. Numéricos Reales (float): almacenan números muy grandes que poseen parte entera y parte decimal. Su rango incluye los positivos y los negativos y admite números de 32 (float) y 64 bits (double).  Cadena de caracteres (String) es una sucesión de caracteres (letras, números u otros signos o símbolos). Se almacenan en forma dinámica (pueden alterar su longitud durante el tiempo de ejecución = listas dinámicas), o en forma estática (su longitud es fija a lo largo del tiempo de ejecución = arrays). Datos Compuestos
  • 5. Un identificador es el nombre que se le da a cada uno de los elementos incluidos en un algoritmo.  Existen identificadores predefinidos que forman parte del lenguaje algorítmico, y los identificadores definidos por el programador a través de variables y constantes.  En pseudocódigo, todo identificador debe cumplir unas reglas de sintaxis: ◦ Consta de uno o más caracteres. ◦ El primer carácter debe ser una letra o el carácter subrayado (_) ◦ Las letras pueden ser minúsculas o mayúsculas del alfabeto inglés. ◦ No pueden existir dos identificadores iguales. ◦ Un identificador no puede contener caracteres especiales, salvo el carácter subrayado (_). Es importante resaltar que las vocales no pueden llevar tilde ni diéresis. ◦ Un identificador en lo posible debe ser un nombre nemotécnico, esto es, utilización de letras abreviadas que den cuenta de qué tipo de dato almacena, por ejemplo: char para carácter. Identificadores…
  • 6. De acuerdo a lo que has aprendido sobre identificadores, indica de los siguientes cuáles son identificadores válidos: 1. Puerta21 2. 3tres 3. 2007 4. Helicóptero 5. COCHE_52 6. **motocicleta** 7. __platillo__ 8. cas-ti-llo 9. ¡Fiesta! 10._*_*_ 11.47_ejercicio 12.Costa Rica 13.aErOnAvE Ejercicio con IDENTIFICADORES
  • 7. Variables Constantes  Una variable representa a un  Una constante representa a un espacio de memoria en el cual valor (dato almacenado en se puede almacenar un dato memoria) que no puede cambiar que cambia tantas veces como durante la ejecución de un sea necesario durante la programa. ejecución de un programa.  Para expresar una constante con un nombre, la constante debe  El programador, cuando ser declarada previamente. desarrolla un programa debe  Todas las constantes que se decidir: declaran en un programa son ◦ Cuantas son las variables que definidas de la misma el programa necesita para forma, indicando de cada una de realizar las tareas que se le ellas: han encomendado. el identificador y el valor que ◦ El tipo de dato que puede simboliza. almacenar cada una de ellas.  En pseudocódigo, para declarar ◦ El identificador de cada una constante, vamos a utilizar variable. la sintaxis:  En pseudocódigo para declarar ◦ Const <nombre_de_la_constante> una variable utilizaremos la = <expresión> sintáxis: ◦ <nombre-variable> = <expresión>
  • 8. 16. Tipo de nutriente alimentario  De la siguiente información, defina qué tipo de dato 17. Carrera o programa elegido almacena y escriba un para estudiar identificador para cada uno: 18. Nivel socio-económico 1. Número de teléfono 19. Ocupación (empleado – 2. Cédula de ciudadanía desempleado) 3. Código de producto 20. Profesión 4. Nombre de persona 5. Dirección 21. Tipo de vivienda 6. Valor de la hora 22. Opción (de una lista de 7. Salario básico opciones) 8. Salario Neto 23. Respuesta (Si – No) 9. Sexo 24. Tipo de procesador (PC) 10. Edad 25. URL 11. Valor de compra propiedad raíz 12. Estado (activo – inactivo) 26. Número celular 13. Email 27. Área (de una figura 14. Nombre de usuario geométrica) 15. Estado civil 28. Resultado (de una operación matemática) 29. Nomenclatura 30. Capacidad de memoria RAM Ejercicios con identificadores de variables:
  • 9. En un programa, el tipo de un dato determina las operaciones que se pueden realizar con él.  Los operadores pueden ser aritméticos, lógicos o relacionales y las expresiones son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales  Una expresión siempre consta de operandos y operadores.  En una expresión los paréntesis definen la prioridad de solución de la expresión, o sea, el orden de cálculo.  Los operadores y las expresiones según el tipo de dato que manipulan se clasifican en: ◦ Aritméticas ◦ Lógicas ◦ Carácter Operadores y expresiones
  • 10. Operador Acción Ejemplo - Resta x = 5 - 3; // x vale 2 + Suma x = 2 + 3; // x vale 5 * Multiplicación x = 2 * 3; // x vale 6 / División x = 6 / 2; // x vale 3 % Módulo x = 5 % 2; // x vale 1 -- Decremento x = 1; x--; // x vale 0 ++ Incremento x = 1; x++; // x vale 2 Operadores aritméticos y prioridad:
  • 11. Mayor precedencia Agrupacion () [] Exponencial ^ Multiplicación, División y Módulo * / % Suma y Resta + - Menor precedencia Precedencia operadores aritméticos
  • 12. Operador Acción Expresiones en lenguaje natural Formalización P^Q P pero Q P sin embargo Q && ^ Conjunción (Y) P no obstante Q P a pesar de Q P^Q o P o Q o ambas cosas || v Disyunción (O) al menos P o Q como mínimo P o Q PvQ no P ! ¬ Negación es falso que P no es cierto P ¬P si P entonces Q Q si P → Implicación Q es necesario para P P es suficiente para Q P→Q Operadores lógicos
  • 13. Mayor precedencia Negación ! Conjunción && Disyunción || Implicación → Menor precedencia Precedencia de operadores lógicos
  • 14. Operador Acción > Mayor que >= Mayor o igual que < Menor que <= Menor o igual que == Igual != Distinto < <= > >= Mayor precedencia Menor precedencia == != Operadores relacionales
  • 15. Mayor precedencia () ^ ++ -- - * / % ! + - && || > < >= <= != == Menor precedencia Precedencia de operadores:
  • 16. Regla Básica: Operando OPERADOR Operando  A<B^C>D  b^c<e  Y >= X  b || c > d  i++; j - -;  a<b>c  a = b || c = d  x^y^z=2  i ← i + 1;  h * m = p;  k || h – 2  k / 2 = j;  ¬P + 5  p (m * -2) + 5 = z;  h ^q-p  a = b ^ c <> d  (e – f || g) * s  T ← h % 2;  2+t^s*3  Y ← (m ^ 2) + (n ** 2);  ¬P ^ Q || ¬P  T^5*k CORRECTO INCORRECTO Manejo de expresiones con operadores:
  • 17. Representar el siguiente enunciado con conectores lógicos: ◦ “Si no pago el recibo de la luz, entonces me cortarán la corriente eléctrica, y Si pago la luz, entonces me quedaré sin dinero o tengo que pedir prestado, pero Si me quedo sin dinero y tengo que pedir prestado, entonces no puedo pagar la deuda” ◦ Donde: P: Pago la luz. Q: Me cortarán la corriente eléctrica. R: Me quedaré sin dinero. S: Tengo que pedir prestado. T: Puedo pagar la deuda. Taller de operadores (1)
  • 18. Evaluar la siguiente expresión matemática teniendo en cuenta la precedencia de los signos:  ( 5 + 10 ) * 3 = 45  2 [ 3 + ( 6 * 5 + 2 ) ] = 70  -5 * [ (-3 * 2 ) (-3) + 1 ] = -15  [ – [ -13 + ( 24 – 68 ) ] – ( -48 + 95) ] – (2 ^ 2)= 6 Taller de operadores (2)
  • 19.  De la siguiente afirmación “Andrés es padre de Bernardo y éste es padre de Cecilia” se obtienen las siguientes proposiciones:  P: Andrés es descendiente de Bernardo  Q: Bernardo es descendiente de Andrés  R: Cecilia es descendiente de Bernardo  S: Cecilia es descendiente de Andrés  Asignar los valores a las siguientes fórmulas de las tablas de verdad y explicar porque: ◦ Proposición Valor Porque ◦ ¬P ◦ ¬Q ◦ P^Q ◦ ¬P ^ Q || ¬P ◦ P ^ ¬Q Taller de operadores (3)
  • 20. Suponiendo declaradas y asignadas las variables: ◦ i=8, j=5, x=0.005, y=-0.01  Indique los valores de las siguientes expresiones: ◦ (3 * i – 2 * j) % (2 * i – j) ◦ 2 * ( (i / 5) + (4 * ( j – 3 ) ) % (i + j – 2) ) ◦ -(i + j) /2 ◦ i++; ◦ j--; ◦ (x > y) && (i > 0) || (j < 5) ◦ (x > y) || (i > 0) && (j < 5) Taller de operadores (4)
  • 21. En programación, una instrucción de asignación consiste en asignar el resultado de la evaluación de una expresión a una variable.  En pseudocódigo, la sintaxis para escribir una asignación es: ◦ <nombre_de_la_variable> ← <expresión>  El valor (dato) que se obtiene al evaluar la <expresión> es almacenado en la variable que se indique.  En una asignación, la variable debe ser del mismo tipo que la expresión asignada.  Una asignación permite cambiar el valor (dato) almacenado en una variable. Asignación:
  • 22.  Una instrucción de entrada (o simplemente entrada) consiste en asignar a una o más variables, uno o más valores (datos) recibidos desde el exterior. Normalmente, los datos son recogidos desde la entrada estándar (el teclado), pero, también existen otros dispositivos de entrada (el ratón, el escáner,...).  En pseudocódigo, la sintaxis de una instrucción de entrada es: ◦ Leer(<nombre_de_la_variable_1>, <nombre_de_la_variable_2>, ..., <nombre_de_la_variable_n> ) ◦ También se puede escribir como:  leer( <lista_de_variables> ) Entrada de Datos
  • 23. En programación, una instrucción de salida consiste en llevar hacia el exterior los valores (datos) obtenidos de la evaluación de una lista de expresiones.  Normalmente, los datos son enviados a la salida estándar (la pantalla), pero, también existen otros dispositivos de salida (la impresora, el plotter,...).  En pseudocódigo, la sintaxis de una instrucción de salida es: ◦ escribir( <expresión_1>, ..., <expresión_n> ) ◦ También se puede escribir como:  escribir( <lista_de_expresiones> ) Salida de datos
  • 24. Tenga en cuenta:  Elaborar un programa que ◦ Datos de E/S imprima el mensaje “Este ◦ Declaración e computador se apagará en cinco minutos”. inicialización de variables.  Hacer un programa que imprima el resultado de multiplicar 2 * 5. ◦ Inicio – proceso –  Elaborar un programa que fin muestre IUE, Facultad de ◦ Prueba de Ingenierías y su nombre. Escritorio  Elaborar un programa que muestre los pasos de un algoritmo.  Elaborar un programa que imprima los primeros 10 números pares.  Elaborar un programa que imprima los números del 1 al 10 en orden inverso. Ejercicios con Algoritmos: salida de datos
  • 25. Elaborar un programa que  Elaborar un programa que de ingrese fecha de nacimiento y acuerdo al tiempo de parqueo de fecha actual e imprima la edad un vehículo, sabiendo que la aproximada. hora cuesta $3000, calcule e  Elaborar un programa que imprima el valor a pagar y la ingrese un número e imprima su placa del vehículo. cubo.  Elaborar un programa que de  Hacer un programa que ingrese acuerdo a un año dado calcule si dos números e imprima su es bisiesto o no. suma.  Elaborar un programa que lea el  Hacer un programa que lea un lado de un cuadrado, calcule e número e imprima su cuadrado. imprima su área.  Elaborar un programa que  Elaborar un programa que lea el ingrese valor hora y número de lado de un triangulo equilátero y horas trabajadas de una persona calcule e imprima su área. e imprima su salario básico  Elaborar un programa que lea un número e indique si es primo o no. Ejercicios con Algoritmos: E/S de datos
  • 26. Ejercicios de diseño de algoritmos en pseudocódigo, en: http://www.carlospes.com/ejercicios_de_algorit mos/  Identificadores, variables y constantes en: http://es.wikipedia.org/wiki/Identificador  Joyanés Aguilar, Luis. Fundamentos de programación: Algoritmos y Estructura de datos. Ed. McGrawHill. Fuentes de la información: