Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Clase Anterior
Tipos de Datos: Numricos:
Entero:
Sin Signo: 1, 2, 4 y 8 bytes. Con Signo: 1, 2, 4 y 8 bytes.
Real:
4 bytes. 8 bytes.
Lgicos. Carcter.
Programacin Prof. Gonzalo Mller Clase 14 GM - 2
Depurador
Ambiente de Desarrollo
Preprocesador
Enlazador
Compilador
Lenguaje C/C++
En 1970 Ken Thompson de los laboratorios Bell crea el lenguaje B como resultado de desarrollar un compilador para el lenguaje Fortran para UNIX. Este lenguaje produca programas relativamente lentos. En 1971 Dennis Ritchie, desarrolla el lenguaje C (NB) con base en el lenguaje B. A principios de los 80 Bjarne Stroustrup en los Bell Laboratories desarrolla C++. C++ surge como una mejora de C.
Lenguaje C/C++
Es Flexible. Permite la escritura a alto y bajo nivel. El Cdigo es Porttil. Con pequeas o ninguna modificacin puede ser compilado en diferentes sistema operativos. Los Programas son ms Rpidos. Los Programas son ms Compactos. Ocupan menos Memoria Principal.
Programacin Prof. Gonzalo Mller Clase 14 GM - 9
Lenguaje C/C++
El vocabulario de C esta compuesto: Identificadores. Palabras Claves (keywords). Constantes. Operadores. Separadores. Comentarios.
Vocabulario de C
Identificador: Es el nombre que el programador coloca para referirse a una determinada locacin de memoria, una variable en memoria. Es ms cmodo que identificar un locacin de memoria con nmero correspondiente a la direccin.
Identificador
A 31
Localidad Direccin
Vocabulario de C
Reglas para definir un Identificador: 1. Se forma con un secuencia de los siguientes caracteres:
Vocabulario de C
2. No puede contener espacios en blanco, ni ningn otro carcter diferente de los indicados en anteriormente. 3. El primer carcter no puede ser un dgito. 4. Hay distincin entre las letras maysculas y minsculas. 5. Puede tener hasta 31 caracteres.
Recomendacin: utilizar un nombre que tengan un significado para el dato que representa.
Programacin Prof. Gonzalo Mller Clase 14 GM - 13
Vocabulario de C
Palabras clave: estn constituidas por una serie de palabras que define el lenguaje y que el programador no puede utilizar como identificador ya que tiene una funcin especfica.
Vocabulario de C
Constantes: Numricas. Lgicas. Carcter. Cadena de Caracteres. Simblicas.
Vocabulario de C
Constantes Numricas: Enteras: Formada con secuencia de dgitos del 0 al 9, , +.
Con signo. Sin signo.
Sufijo Opcional: u , U .
Hexadecimal:
Tiene el Prefijo: 0x, 0X.
Vocabulario de C
Ejemplo: Entera sin signo: 25 Hexadecimal: 0xFE68 De 4 bytes: 98L
98l 0xFE68L 25ul 25u 25U
Vocabulario de C
Reales: Formada con secuencia de dgitos del 0 al 9, , , +, e, E y/o . .
Sufijo Opcional: f , F. Constante de 4 bytes.
Ejemplo: Real: 9010.5 567e10 -2.4E10 Real de 4 bytes: 9010.5f 567e10f -2.4E10 Constantes Lgicas:
Verdadero: true. Falso: false.
Programacin Prof. Gonzalo Mller Clase 14 GM - 18
Vocabulario de C
Constantes Carcter:
Encerradas entre apostrofes. Caracteres especiales: `\t, `\\, `\n, etc.
Constantes Texto:
Encerradas entre comillas. Caracteres especiales: `\t, `\\, `\n, etc.
Ejemplo:
`a Lenguaje C++ es el mejor
Vocabulario de C
Constantes Carcter:
Encerradas entre apostrofes. Caracteres especiales: `\t, `\\, `\n, etc.
Constantes Texto:
Ejemplo:
Vocabulario de C
Operadores: Son signos especiales o un conjunto de ellos que indican diferentes operaciones a realizar
+ * =
Vocabulario de C
Operadores: Asignacin. Aritmticos. Incrementales. Relacionales. Lgicos.
Vocabulario de C
Operador Asignacin, = : Coloca un valor dado a una variable. Una constante. El valor de otra variable. El resultado de una expresin. Constante Variable = Valor Variable Expresin
Siempre a la izquierda
Programacin Prof. Gonzalo Mller Clase 14 GM - 23
Vocabulario de C
Ejemplo:
A = 1000 A = B A = (A + 1)/2 + B*6 C = A C = 200 R = 4.5 R = 25.5*X +Y
Vocabulario de C
Operadores Aritmticos: Suma: + Resta: Multiplicacin: * Divisin: /
Tener cuidado con el tipo de dato utilizado.
Ambos tipos de datos enteros divisin entera
Vocabulario de C
Operadores Relacionales: Mayor que: > Menor que: < Igual que: == Mayor o igual que: >= Menor o igual que: <= Distinto que: != Se utilizan con variables y constantes para formar expresiones lgicas sencillas.
Programacin Prof. Gonzalo Mller Clase 14 GM - 26
Vocabulario de C
Operadores Lgicos: Y: && O: || Se utilizan expresiones lgicas sencillas para formar expresiones lgicas compuestas. Negacin: !
Vocabulario de C
Separadores: estn constituidos por: Espacios en blanco. Tabuladores. Caracteres de nueva lnea.
Vocabulario de C
Comentarios: es posible introducir comentarios en el programa fuente, que permitan aclarar parte del mismo. El compilador ignora los comentarios.
/* : indica al compilador el comienzo de un comentario. */ : indica al compilador el final de un comentario. // : indica al compilador que el resto de la lnea es un comentario.
Vocabulario de C
/* y */ Siempre deben ser usados en pareja. Ejemplo: /* Este es un comentario: lenguaje C++ es el mejor lenguaje de programacin */ // Este es otro comentario: la mayora de los // sistema operativos son desarrollados en C++
Directivas de Preprocesador
main() {
Directivas de Preprocesador
Mdulo principal
main() {
Mdulo principal
Directivas de Preprocesador
main() {
Mdulo principal
Constituye el bloque principal de un programa en C/C++. Todo programa en C/C++ debe tener un bloque main.
C/C++
main() {
Declaraciones
Directivas de Preprocesador
main() {
Tipos de Datos
Declaraciones
Le indican al compilador el tipo y propiedades de una variable.
Tipos de Datos
Entero Tamao 1 byte (char) Sin signo (unsigned) unsigned char Con signo (signed) signed char signed short signed long
Tipos de Datos
Reales: de 4 Bytes: float de 8 Bytes: double
Tipos de Datos
Reales: de 4 Bytes: float de 8 Bytes: double Lgico: bool Carcter: char
Declaraciones
Le indican al compilador el tipo y propiedades de una variable.
tipo variable
Numricos: Entero: Sin Signo: 1, 2, 4 bytes: unsigned char, unsigned short, unsigned long Con Signo: 1, 2, 4 bytes: signed char, signed short, signed long Real: 4 bytes: float 8 bytes: double Lgicos: bool Carcter.: char
Declaraciones
Le indican al compilador el tipo y propiedades de una variable.
tipo variable
Numricos: Entero: Sin Signo: 1, 2, 4 bytes: unsigned char, unsigned short, unsigned long Con Signo: 1, 2, 4 bytes: signed char, signed short, signed long Real: 4 bytes: float 8 bytes: double Lgicos: bool Carcter.: char
Declaraciones
Ejemplo: Se requiere seleccionar el tipo de dato para una variable que almacenar las cantidad de donas vendidas por un vendedor informal en medio da.
Debe ser Numrica. Debe ser Entera, ya que se vende las donas enteras Debe ser Entera sin signo, ya que el vendedor entrega las donas no las recibe (sin considerar productos devueltos por el comprador o hurtos). Puede ser de 1 byte, ya que es difcil que un vendedor informal venda ms de 255 donas en medioda.
Declaraciones
Ejemplo: Se requiere seleccionar el tipo de dato para una variable que almacenar las cantidad de donas vendidas por un vendedor informal en medio da.
Debe ser Numrica. Debe ser Entera, ya que se vende las donas enteras Debe ser Entera sin signo, ya que el vendedor entrega las donas no las recibe (sin considerar productos devueltos por el comprador o hurtos). Puede ser de 1 byte, ya que es difcil que un vendedor informal venda ms de 255 donas en medioda. LV
Declaraciones
Ejemplo: Se requiere seleccionar el tipo de dato para una variable que almacenar las cantidad de donas vendidas por un vendedor informal en medio da.
Debe ser Numrica. Debe ser Entera, ya que se vende las donas enteras Debe ser Entera sin signo, ya que el vendedor entrega las donas no las recibe (sin considerar productos devueltos por el comprador o hurtos). Puede ser de 1 byte, ya que es difcil que un vendedor informal venda ms de 255 donas en medioda. LV
Declaraciones
Ejemplo: Se requiere seleccionar el tipo de dato para una variable que almacenar las cantidad de donas vendidas promedio vendidas por un vendedor informal en medio da por una semana.
Debe ser Numrica. Debe ser Real, ya que el promedio es un nmero no necesariamente entero, es decir, puede contener decimales. Puede ser de 4 bytes, ya que este tipo ofrece una precisin de 6 cifras significativas y para el vendedor es necesario a lo sumo 1 cifra.
Real de 4 bytes
Declaraciones
Ejemplo: Se requiere seleccionar el tipo de dato para una variable que almacenar las cantidad de donas vendidas promedio vendidas por un vendedor informal en medio da por una semana.
Debe ser Numrica. Debe ser Real, ya que el promedio es un nmero no necesariamente entero, es decir, puede contener decimales. Puede ser de 4 bytes, ya que este tipo ofrece una precisin de 6 cifras significativas y para el vendedor es necesario a lo sumo 1 cifra.
Real de 4 bytes
LV
Declaraciones
Ejemplo: Se requiere seleccionar el tipo de dato para una variable que almacenar las cantidad de donas vendidas promedio vendidas por un vendedor informal en medio da por una semana.
Debe ser Numrica. Debe ser Real, ya que el promedio es un nmero no necesariamente entero, es decir, puede contener decimales. Puede ser de 4 bytes, ya que este tipo ofrece una precisin de 6 cifras significativas y para el vendedor es necesario a lo sumo 1 cifra.
Real de 4 bytes
LV
float donasPromedio
Programacin Prof. Gonzalo Mller Clase 14 GM - 47
Declaraciones
Ejemplo: Se requiere seleccionar el tipo de dato para una variable que almacenar si un vendedor informal vendi donas de chocolate en medio da.
Debe ser Lgica, ya que se necesita almacenar dos situaciones, si vendi o no vendi, verdadero si vendi y falso de lo contrario.
Lgica
Declaraciones
Ejemplo: Se requiere seleccionar el tipo de dato para una variable que almacenar si un vendedor informal vendi donas de chocolate en medio da.
Debe ser Lgica, ya que se necesita almacenar dos situaciones, si vendi o no vendi, verdadero si vendi y falso de lo contrario.
Lgica
LV
chocoDonas: lgica
Declaraciones
Ejemplo: Se requiere seleccionar el tipo de dato para una variable que almacenar si un vendedor informal vendi donas de chocolate en medio da.
Debe ser Lgica, ya que se necesita almacenar dos situaciones, si vendi o no vendi, verdadero si vendi y falso de lo contrario.
Lgica
LV
chocoDonas: lgica
bool chocoDonas
Declaraciones
Ejemplo:
Tipo Identificador
signed char llamadas /*Variable tipo Entero con Signo de 1 byte llamada Llamadas*/
Tipo Identificador1 Identificador3
float minimo, maximo, media /*Variables tipo Real de 4 byte llamadas Minimo, Maximo y Media*/
Declaraciones
Las variables siempre debe declararse antes de ser utilizadas. El compilador necesita saber la cantidad de memoria que necesita reservar para la variable. Ejemplo: Directivas de Preprocesador
main() { float minimo, maximo, media/* Mnimo , Mximo y Media*/
Secuencia de Sentencias
Programacin Prof. Gonzalo Mller Clase 14 GM - 52
Tipos de Datos
Observaciones respecto a los enteros: Existe el tipo entero: int
No esta normalizado por la ANSI. No es recomendable su uso por que su tamao depende del compilador.
Sentencias
Directivas de Preprocesador
main() {
Algoritmo
Sentencias
C/C++
main() {
//Declaraciones //Algoritmo
PC Algoritmo { }
DRE
Algoritmo
DF
Comienzo
Fin
Fin
Sentencias
Constituye una combinacin adecuada de identificadores, constantes, operadores y separadores, la cual realiza una operacin especfica. Ejemplo:
c = a + b Superior = r = b + 1 Mitad = n * 0.5f
Sentencias
Tipos de Sentencia: Declarativas: Se declara un identificador. Asignacin: Se realiza un operacin de asignacin. Control: Se lleva a cabo alguna operacin condicionada o repetitiva. Llamada: Se realiza una llamada a una subrutina. Nula: No se realiza ninguna operacin.
Sentencias
Todas las sentencias excepto las de control deben terminar con el smbolo ; . Ejemplo:
Declarativas: Asignacin: Llamadas: Nula:
float acumulador; acumulador = 0; printf(C++ es el 1); ;
Directivas de Preprocesador
Directivas de Preprocesador
main() {
Directivas de Preprocesador
Ahorran la escritura y aumentan la legilibidad del cdigo. Sus principales funciones son: Definir de constantes simblicas. Incluir de archivos de cabecera de libreras predefinidas.
Libreras
Librera
Mdulo1 Mdulo2 Mdulo3 Mdulo4 Mdulo5 Mdulo6 Mdulo7 Mdulo8 Mdulo9
Programacin Prof. Gonzalo Mller Clase 14 GM - 61
Libreras Predefinidas
Son programas objeto que contiene conjunto de mdulos preprogramados.
La directiva #include del preprocesador permite incluir archivo cabecera:
Libreras Predefinidas
Son libreras predefinidas por C, con mdulos de: Entrada y salida. Matemticas bsicas. Manejo de archivos. Manejo de Cadena de Caracteres. Ordenamiento y bsqueda. entre otras.
Libreras Estndar
Los archivos cabecera de las principales libreras estndar son: Entrada/Salida: stdio.h Matemticas: math.h Utileras Generales: stdlib.h
Libreras Estndar
Ejemplo: Si desea realizar operaciones matemticas y de entrada y salida sera necesario incluir la libreras respectivas:
#include <math.h> #include <stdio.h> main() {
Funciones Entrada/Salida
El flujo de entrada y salida de datos puede ser realizado forma directa con el usuario a travs del teclado y el monitor.
Entrada Teclado
Programa
Salida Monitor
Funciones Entrada/Salida
C ofrece un conjunto de funciones de entrada y salida predefinidas en las libreras estndar stdio, las principales son: De salida: printf. De entrada: scanf. Entrada Teclado Programa
printf
scanf
Salida Monitor
Funciones Entrada/Salida
C ofrece un conjunto de funciones de entrada y salida predefinidas en las libreras estndar stdio, las principales son: De salida: printf. De entrada: scanf. Entrada Teclado Programa
Equivalente en Javascript prompt document.write
scanf
printf
Salida Monitor
Funciones Entrada/Salida
printf: Presenta en informacin en pantalla. Formas de uso: 1. Solo texto, sin formato:
printf(Texto);
Texto: constante texto que contiene la informacin que se desea presentar en pantalla.
Funciones Entrada/Salida
Ejemplo:
/* Escribe en pantalla: Lenguaje C++ es el 1*/ printf(Lenguaje C++ es el 1); /* Escribe en dos lneas en pantalla: Lenguaje C++ es el Mejor!*/ printf(Lenguaje C++\n); printf(es el Mejor!);
Funciones Entrada/Salida
Ejemplo:
/* Escribe en pantalla: Lenguaje C++ es el 1*/ printf(Lenguaje C++ es el 1);
Equivalente en Javascript: document.write(Lenguaje C++ es el 1);
/* Escribe en dos lneas en pantalla: Lenguaje C++ es el Mejor!*/ printf(Lenguaje C++\n); printf(es el Mejor!);
Equivalente en Javascript: document.write(Lenguaje C++ <br/>); document.write(es el Mejor!);
Programacin Prof. Gonzalo Mller Clase 14 GM - 71
Ejercicio
Construir un programa en C que coloque en pantalla su edad y su promedio. Fase 1: Diseo y Anlisis: DES, DRE DF y CF. Fase 2: Codificacin: programa estructurado en C. Notacin, Documentacin e Indentacin.
Funciones Entrada/Salida
2. Texto + variables, con formato: Presenta el contenido de un conjunto de variables en pantalla.
printf(Formato,variable1,variable2,);
Formato: constante texto que establece que tipo de variables estn contenidas en las lista y como debe presentarse en pantalla.
Funciones Entrada/Salida
El formato esta constituido por al menos una lista de especificadores de las variables a escribir:
Funciones Entrada/Salida
Un especificador esta formado por un carcter porcentaje y una letra, la cual indica el tipo de variable correspondiente:
Letra c d u x,X f,e,E,g,G Tipo de dato Carcter Entero con signo Entero sin signo Hexadecimal Real
%letra
Funciones Entrada/Salida
Algunos formatos bsicos para la escritura seran:
Formato %u %d %x %f %e %g %.2f %c Tipo de dato Entero sin signo Entero con signo Hexadecimal Real Real Real Real (2 decimales) Carcter
Funciones Entrada/Salida
Algunos formatos bsicos para la escritura seran:
Formato %u %d %x %f %e %g %.2f %c Tipo de dato Entero sin signo Entero con signo Hexadecimal Real Real Real Real (2 decimales) Carcter
Funciones Entrada/Salida
El formato esta constituido por al menos una lista de especificadores de las variables a escribir, que indican el tipo de cada una: Formato slo variables especificador1 especificador2 especificador3
Funciones Entrada/Salida
Ejemplo:
LV contador: entera sin signo de 1 byte
Funciones Entrada/Salida
Ejemplo:
LV contador: entera sin signo de 1 byte
Funciones Entrada/Salida
Ejemplo:
LV contador: entera sin signo de 1 byte
unsigned char contador; /* Escribe en pantalla: El valor de la variable contador*/ printf(%u, contador); Formato %u
Programacin Prof. Gonzalo Mller Clase 14 GM - 81
Funciones Entrada/Salida
Ejemplo:
/* Escribe en pantalla: El valor de la variable contador*/ printf(%u, contador);
Formato
/* Escribe en pantalla: El valor de la variable contador y media*/ printf(%u %f, contador, media);
Formato
Funciones Entrada/Salida
Ejemplo:
/* Escribe en pantalla: El valor de la variable contador*/ printf(%u, contador);
Lista de Variables
/* Escribe en pantalla: El valor de la variable contador y media*/ printf(%u %f, contador, media);
Lista de Variables
Funciones Entrada/Salida
Ejemplo:
/* Escribe en pantalla: El valor de la variable contador*/ printf(%u, contador); /* Escribe en pantalla: El valor de la variable contador y media*/ printf(%u %f, contador, media);
Correspondencia
Funciones Entrada/Salida
Ejemplo:
/* Escribe en pantalla: El valor de la variable contador*/ printf(%u, contador); /* Escribe en pantalla: El valor de la variable contador y media*/ printf(%u %f, contador, media);
Correspondencia
Funciones Entrada/Salida
Ejemplo:
/* Escribe en pantalla: El valor de la variable contador*/ printf(%u, contador);
Equivalente en Javascript: document.write(contador);
/* Escribe en pantalla: El valor de la variable contador y media*/ printf(%u %f, contador, media);
Equivalente en Javascript: document.write(contador + + media);
Funciones Entrada/Salida
printf(%letra1 %letra2 %letra3,
Correspondencia
variable1,variable2,variable3);
Funciones Entrada/Salida
printf(%letra1 %letra2 %letra3,
Correspondencia
variable1,variable2,variable3);
Funciones Entrada/Salida
printf(%letra1 %letra2 %letra3,
Correspondencia
variable1,variable2,variable3);
1 Especificador del Formato1 Variable de la Lista 2 Especificador del Formato2 Variable de la Lista
Funciones Entrada/Salida
printf(%letra1 %letra2 %letra3,
Correspondencia
variable1,variable2,variable3);
1 Especificador del Formato1 Variable de la Lista 2 Especificador del Formato2 Variable de la Lista 3 Especificador del Formato3 Variable de la Lista
Funciones Entrada/Salida
printf(%letra1 %letra2 %letra3,
Correspondencia
variable1,variable2,variable3);
1 Especificador del Formato1 Variable de la Lista 2 Especificador del Formato2 Variable de la Lista 3 Especificador del Formato3 Variable de la Lista
Programacin Prof. Gonzalo Mller Clase 14 GM - 91
Ejercicio
Construir un programa en C que coloque en pantalla su edad y su promedio. La edad y promedio debe estar almacenado en variables. Fase 1: Diseo y Anlisis: DES, DRE DF, LV y CF. Fase 2: Codificacin: programa estructurado en C. Notacin, Documentacin e Indentacin.
Programacin Prof. Gonzalo Mller Clase 14 GM - 92
Funciones Entrada/Salida
El formato esta constituido por un texto que contiene la lista de especificadores de las variables a escribir, que indican el tipo de cada una: Formato con texto Texto especificador1 Texto especificador2
Funciones Entrada/Salida
Ejemplo:
LV contador: entera sin signo de 1 byte media: real de 4 bytes
Funciones Entrada/Salida
Ejemplo:
LV contador: entera sin signo de 1 byte media: real de 4 bytes
Formato %u %f
Programacin Prof. Gonzalo Mller Clase 14 GM - 95
Funciones Entrada/Salida
Ejemplo:
LV contador: entera sin signo de 1 byte media: real de 4 bytes
Formato %u %f
Programacin Prof. Gonzalo Mller Clase 14 GM - 96
Funciones Entrada/Salida
Ejemplo:
LV contador: entera sin signo de 1 byte media: real de 4 bytes
Funciones Entrada/Salida
Ejemplo:
LV contador: entera sin signo de 1 byte media: real de 4 bytes
Funciones Entrada/Salida
Ejemplo:
LV contador: entera sin signo de 1 byte media: real de 4 bytes
Formato %u %f
Funciones Entrada/Salida
Ejemplo:
LV contador: entera sin signo de 1 byte media: real de 4 bytes
Funciones Entrada/Salida
Ejemplo:
LV contador: entera sin signo de 1 byte media: real de 4 bytes
Funciones Entrada/Salida
Ejemplo:
LV contador: entera sin signo de 1 byte media: real de 4 bytes
Ejercicio
Construir un programa en C que coloque en pantalla su edad y su promedio. La edad y promedio debe estar almacenado en variables. Fase 1: Diseo y Anlisis: DES, DRE DF, LV y CF. Fase 2: Codificacin: programa estructurado en C. Notacin, Documentacin e Indentacin.
Programacin Prof. Gonzalo Mller Clase 14 GM - 103
Operador Referencia
&: Obtiene la direccin en memoria de una variable. Ejemplo:
unsigned char A; A = 101; printf(%u\n, 101); printf(%u\n, A); printf(%u, &A);
A 101 31
Identificador
Direccin
Funciones Entrada/Salida
scanf: Lee un dato desde el teclado y escribe en la variable indicada el resultado. Forma de uso:
scanf(Formato,&variable);
Formato: constante texto que establece que tipo de variable ser leda.
Funciones Entrada/Salida
El formato en realidad est constituido nicamente por el especificador que indica el tipo de dato a leer: %letra
Tipo de dato Carcter Entero con signo u Entero sin signo x Hexadecimal f,e,E,g,G float Letra c d Observacin No lee espacio en blanco Prefijo l para long, h para short, hh para char, ll para long long Prefijo l para long, h para short, hh para char, ll para long long Hexadecimal Prefijo l o L para double
Funciones Entrada/Salida
De esta forma algunos formatos bsicos para la lectura seran:
Formato %c %hhd %hhu %hd %hu %ld %lu %f %lf Tipo de dato char signed char unsigned char signed short unsigned short signed long unsigned long float double
(ISOC9899) (ISOC9899)
Funciones Entrada/Salida
De esta forma algunos formatos bsicos para la lectura seran:
Formato %c %hhd %hhu Tipo de dato char signed char unsigned char
(ISOC9899) (ISOC9899)
La lectura de un carcter puede ser problemtica, por lo que es recomendable utilizar una variable entera en su lugar cuando se posible
Programacin Prof. Gonzalo Mller Clase 14 GM - 108
Funciones Entrada/Salida
Ejemplo:
LV cantidad: entera sin signo de 2 byte
Funciones Entrada/Salida
Ejemplo:
LV cantidad: entera sin signo de 2 byte
Funciones Entrada/Salida
Ejemplo:
unsigned short cantidad; /* Lee de teclado: variable cantidad*/ El valor de la
Funciones Entrada/Salida
Ejemplo:
/* Lee de teclado: variable cantidad*/ El valor de la
El
valor
de
la
Funciones Entrada/Salida
Ejemplo:
/* Lee cantidad de datos*/ printf(Cantidad de datos:); scanf(%hu, &cantidad); /* Lee media de datos*/ printf(Media de datos:); scanf(%f, &media);
Si un programa se detiene abruptamente o se guinda es recomendable revisar todos los scanf del programa fuente ya que alguno puede estar ocasionando el problema
Programacin Prof. Gonzalo Mller Clase 14 GM - 113
Funciones Entrada/Salida
Ejemplo:
/* Lee cantidad de datos*/ printf(Cantidad de datos:); scanf(%hu, &cantidad);
Equivalente en Javascript: cantidad = parseInt(prompt(Cantidad de datos:));
Ejercicio
Construir un programa en C que lea la edad y promedio y lo presente a la salida. Fase 1: Diseo y Anlisis: DES, DRE DF, LV y CF. Fase 2: Codificacin: programa estructurado en C. Notacin, Documentacin e Indentacin.
Ejercicio
Construir un programa en C para hallar la hipotenusa2 de un triangulo dado sus catetos. Fase 1: Diseo y Anlisis: DES, DRE DF, LV y CF. Fase 2: Codificacin: programa estructurado en C. Notacin, Documentacin e Indentacin.
Ejercicio
Construir el programa en C para promediar dos notas. Fase 1: Diseo y Anlisis: DES, DRE DF, LV y CF. Fase 2: Codificacin: programa estructurado en C. Notacin, Documentacin e Indentacin.
Sentencias de Control
Permiten ejecutar una sentencia o una secuencia de sentencias de forma repetitiva o no, dada un condicin. Sentencia Condicional. Sentencia Repetitiva.
Si se ejecuta una secuencia de sentencias las mismas deben ser colocadas entre llaves { }.
Programacin Prof. Gonzalo Mller Clase 14 GM - 118
Sentencias de Control
Condicional Sencilla
JavaScript/ C/C++
{ }
PC
DRE
DF
if(Condicin) Si(Condicin) { }
Condicin
V
Condicin
V
Sentencias de Control
Ejemplo: Construir un bloque de sentencias en C que convierta un nmero positivo A en par.
Sentencias de Control
Condicional Doble
JavaScript/ C/C++
} else { }
PC
{
DRE
DF
if(Condicin) Si(Condicin) {
Condicin
V F
Condicin
} sino { }
Sentencias de Control
Ejemplo: Construir un programa en C que calcule las races reales de una ecuacin cuadrtica Ax2 + Bx C.
Sentencias de Control
Estructura Repetitiva Mientras
JavaScript/C /C++ PC DRE DF
while(Condicin) Mientras(Condici { n) }
{ }
Mientras (Condicin)
Condicin
V
Sentencias de Control
Estructura Repetitiva Hacer Mientras nica sentencia de control que termina en ;.
JavaScript/C /C++
do { } while(Condicin); }
PC
Hacer {
DRE
DF
Mientras (Condicin)
V
Condicin
Mientras(Condici n)
Ejercicio
Construir el programa en C que sume los nmeros del A al B. Fase 1: Diseo y Anlisis: DES, DRE DF, LV y CF. Fase 2: Codificacin: programa estructurado en C. Notacin, Documentacin e Indentacin.
Funciones Entrada/Salida
scanf retorna la cantidad de elementos ledos. Si este valor es 0, indica que hubo un error convirtiendo el dato ledo en el tipo correspondiente.
Su principal utilidad es para el caso en que el usuario ingrese texto en un valor numrico. De ser este el caso el scanf finaliza y retorna 0, pero el buffer de entrada queda con los caracteres ingresados por el usuario, por lo que es necesario eliminarlos para que subsecuentes llamadas funcionen correctamente.
Programacin Prof. Gonzalo Mller Clase 14 GM - 126
Funciones Entrada/Salida
Forma de uso:
while(scanf(Formato,&Variable) == 0) { getchar(); }
Elimina un carcter del buffer de entrada
Sale del bucle solo cuando un valor numrico fue asignado a la variable
Ejercicio
Construir el programa en C que lea un nmero real validando que no sea texto.
Entradas
Entradas
DRE
Nombre FIN
Entradas
DRE
Nombre FIN
Lista de Variables
Variables variable : tipo
Programacin Prof. Gonzalo Mller Clase 14 GM - 132
Entradas
C/C++
main() {
//Declaraciones //Algoritmo
DRE
Nombre FIN
Lista de Variables
Variables variable : tipo
Entradas
C/C++
main() {
//Declaraciones //Algoritmo
DRE
Nombre FIN
Lista de Variables
Variables variable : tipo
Ejercicios
Construir un programa en C para: a) Calcular la sumatoria de los primeros N nmeros enteros. b) Calcular el factorial de N. Fase 1: Diseo y Anlisis: DES, DRE DF, LV y CF. Fase 2: Codificacin: programa estructurado en C. Notacin, Documentacin e Indentacin.
Programacin Prof. Gonzalo Mller Clase 14 GM - 135
Ejercicios
Construir un programa en C para: c) Promediar los pares y promediar los impares de los nmeros entre A y B. d) Contar la cantidad de nmeros mltiplos de K que hay en los primeros N nmero enteros. Fase 1: Diseo y Anlisis: DES, DRE DF, LV y CF. Fase 2: Codificacin: programa estructurado en C. Notacin, Documentacin e Indentacin.
Programacin Prof. Gonzalo Mller Clase 14 GM - 136
Resumen
Creacin de un programa Compilado. Ambiente de Desarrollo C. Lenguaje C/C++ Vocabulario: Identificadores, Operadores, Constantes, etc. Funcin Main. Declaraciones: Tipos de Datos. Secuencia de Sentencias.
Programacin Prof. Gonzalo Mller Clase 14 GM - 137
Palabras
Claves,
Resumen
Directivas de preprocesador, Libreras y Funciones. Funciones Entrada/Salida: printf: Sin formato, Con formato. scanf. Sentencias de Control. Condicionales. Repetitivas. Metodologa para creacin de un programa C.
Programacin Prof. Gonzalo Mller Clase 14 GM - 138