clase_3
-
Upload
darwin-carrion-solano -
Category
Documents
-
view
215 -
download
0
description
Transcript of clase_3
Identificadores
Los identificadores son las palabras con las que identificamos o llamamos a una variable o constante.
A la hora de dar nombre a una variable, o sea a la hora de identificar una variable debemos de tener en cuenta unas reglas de nomenclatura, marcadas por el lenguaje de programación en C son las siguientes.
Reglas de nomenclatura para los identificadores
Los nombres de los identificadores pueden llevar caracteres alfanuméricos. Letras de la A a la Z excluyendo la ñ . Y todos los números.
Si es obligatorio que el nombre del identificador empiece por una letra y no un numero u otro signo.
Los identificadores solo aceptan el signo _ (guión bajo-subrayado), por tanto quedan excluidos otros como el signo de interrogación, los paréntesis, etc.
Tampoco podremos usar como identificadores las palabras reservadas de un lenguaje, palabras tales como: if, else, goto, etc.
El numero de caracteres de un identificador nunca debe sobrepasar los 31. Algunos compiladores solo
reconocen los 8 primeros caracteres de los identificadores. Esto ya depende del potencial del compilador.
Recordemos que en C se distinguen entre mayúsculas y minúsculas con lo cual es distinto un identificador tal como, Suma que otro como suma
(Por convenio se ha decidido que los identificadores estén escritos en minúsculas.)
variable
Definir una variable es indicar el tipo de dato que va a contener y almacenar, y en función de esto mas o menos grande dependiendo del tipo de dato que vaya a albergar dicha variable reservar una determinada dirección de memoria o palabra de memoria (es la cantidad de bytes que ocupa un tipo de dato).
Con lo que si queremos que una variable contenga un dato numérico deberemos de definirla de distinta forma que si queremos que contenga una cadena de caracteres. Cuando definimos una variable no le estamos introduciendo ningún valor, sino que únicamente estamos indicando que tipo de valor va almacenar posteriormente.
Es obligatorio que siempre definamos una variable antes de introducir en ella un valor, y esto es así porque es necesario que se reserve en memoria un espacio limitado mas o menos grande dependiendo del tipo de dato que vaya a albergar dicha variable.
Constantes
Elementos de almacenamiento de datos o direcciones de memoria, que no varían de ninguna forma durante el proceso del programa. Con lo que su valor será el mismo tanto al comienzo como al final de este.
Las constantes no solo funcionan en cualquier parte del procedimiento como las variables globales sino que también devuelven su valor almacenado en cualquier parte del código o programa
TIPOS DE DATOS SIMPLES
Tipos de datos simples• Numéricos (Enteros, reales).• Lógicos (booleanos).• Alfanuméricos (Carácter, cadenas).
Enteros: Representan los números enteros, no poseen parte decimal, ejemplo: 5, 6, -15, -100,1000,…
Reales: Representan números reales, poseen parte decimal, ejemplo: 0.08, 3.14, 3.7452, -8.003, 3.0.
Booleanos: Aquellos que pueden tomar dos posibles valores; falso (false) o verdadero (true).
Alfanuméricos: Conjunto finito y ordenado que el computador reconoce
ANATOMIA DE UN PROGRAMAAlgoritmo(Nombre_algoritmo) Declaracion_de_variables INICIO INSTRUCCIÓN_1 INSTRUCCIÓN_2 INSTRUCCIÓN_3 . . . INSTRUCCIÓN_N FIN_INICIOFin(Nombre_algoritmo)
variable variable, constante, expresión
Operador de asignación (,=)
b PIc -9.8d “Nerón Navarrete”
b ac fd n
b a + 4*gc c + 1z (x+y)/w + v^3
variable variable variable constante variable expresión
PSEUDOCODIGO, DIAGRAMAS DE FLUJO Y ALGO DE C
ProblemaRealizar un algoritmo que solicite al usuario
dos números enteros, realice su suma y la imprima en pantalla.
PSEUDOCODIGO, DIAGRAMAS DE FLUJO Y ALGO DE C
• Solución : ANALISIS– Datos de entrada: Los dos números
(necesito dos variables para llevarlos. Bauticémoslas como a y b).
– Datos de salida: Variable en la cual se almacena el resultado de la suma (c).
– Proceso: ¿Que es lo que tengo que hacer?• Solicitar al usuario los datos de entrada.• Sumar los dos datos de entrada.• Desplegar el resultado.
• Todo lo anterior esta bien, pero a la hora de la verdad eso no entiende el computador como llevarlo a cabo.
• Lenguajes de alto nivel (Lenguaje C).
PSEUDOCODIGO, DIAGRAMAS DE FLUJO Y ALGO DE C
Computadora mata a Flanders
???????
Algoritmo(sumar) Variables: entero: a, b, c INICIO ESCRIBA(“Digite el primer numero (entero)”) LEA(a) ESCRIBA(“Digite el segundo numero (entero)”) LEA(b) c a + b ESCRIBA(“La suma es: ”,c) FIN_INICIOFin(sumar)
#include<stdio.h>
int main(){ int a, b, c = 0; printf(“Digite el primer numero (entero): ”); scanf(“%d”,&a); printf(“Digite el segundo numero (entero): ”); scanf(“%d”,&b); c = a + b; printf(“El resultado de la suma es: %d\n”,c); return 0; }
INTRUCCION AL LENGUAJE CEsto nos lleva a la siguiente conclusionalgoritmo (nombre_algoritmo)variables: tipo_1: lista_variables_1 tipo_2: lista_variables_2 . . . tipo_N: lista_variables_Nconstantes: lista_identificadores = valorINICIO sentencia_1 sentencia_2 . . . sentencia_NFIN_INICIOfin(nombre_algoritmo)
#include <librerias_del_sistema>#include “librerias_propias”
variables_globales;
int main() { variables_locales; sentencia_1; sentencia_2; . . . sentencia_N;Return 0;}
MANEJO DE VARIABLES Variables: Existen tres tipos de datos básicos; los enteros,
los números de coma flotante (reales) y caracteres. C cuenta con varias clases de tipos de datos
fundamentales: enteros, caracteres y datos de coma flotante.
floatdouble
int
charalfanuméricas
Enteras
Reales
Variables en C (Tipos de datos)
Variables Pseudocódigo
MANEJO DE VARIABLES• Declaración: consiste en definir cada una de las variables que van a ser
usadas en el programa. Sigue la siguiente Sintaxis: tipo nom_var1 <, nom_var2, nom_var3 <= valor_inicial>, nom_varN>;• En C Toda variable debe ser declarada antes de ser usada. Cosa que no se
declara cosa que no existe y error!!!. La inicialización de esta es opcional
TABLA SENCILLA DE EQUIVALENCIAS C-PSEUDOCODIGO
Pseudocódigo Lenguaje C
entera int
real floatdouble
alfanumérica char
variables: entero: num_estudiantes real: prom_grupo, estatura, peso entero: num_clases = 0
int num_estudiantes;float prom_grupo, estatura, peso;int num_clases = 0;
SOBRE LOS NOMBRES DE LAS VARIABLES• Identificadores: Nombres que se le dan a las constantes o variables.
Declaración errónea de las variables
Declaración correcta de las variables
#define M 10#define N 10. /* Es un double */#define PI 3.14159265 /* double */#define PIf 3.14159265f /* float */#define A -1.2345e-17 /* double en notación científica */#define salto_de_linea '\n'#define HOLA "HOLA"
EJEMPLO CONSTANTES
#include <stdio.h>#define PI 3.1416main () {printf( "\n El numero PI vale: %f”, PI);}
RECORDERIS TIPOS FUNDAMENTALES DE DATOS• Cuando declaro una variable la elección del tipo de dato depende del propósito para el cual voy a usar la variable.
Tipo Ejemplo Tamaño en bytes
Rango (minimo-maximo)
char ´c´ 1 0,…,255
int 1024 2 (o 4, depende de la arquitectura)
-32768,…,32767 (si el tamaño en bytes es 2)
float 10.5 4 3.4E-38 ,….,3.4E38
double
1e-8 8 1.7E-308,…,1.7E308
IMPRIMIENDO VARIABLES EN PANTALLA - ASPECTOS BASICOS (1)Como hemos visto ya hemos trabajado con algunos de los diferentes tipos de datos que C nos brinda pero aun no tenemos manera de ver que valor tienen pues no las hemos desplegado en pantalla.
C proporciona varias funciones para imprimir datos en pantalla, por ahora solo nos vamos a centrar en la función printf la cual es una de las implementaciones en C de la función ESCRIBA (vista antes por nosotros en Pseudocódigo).
IMPRIMIENDO VARIABLES EN PANTALLA – ASPECTOS BASICOS (2)
ESCRIBA(‘cadena1’,…,’cadenaN’,var1,var2,…,varN);
printf(“cadena_de_control_y_formato”, <dato1,dato2,. . .,datoN>);
• Cadena de control: Contiene los datos y la forma de mostrarlos. Es lo que va entre comillas.• Datos (dato1, dato2,…,datoN): Variables, constantes o en general expresiones de salida.
Ejemplo simple :printf("Hola Mundo");printf("Función printf, para mostrar información en pantalla");
IMPRIMIENDO VARIABLES EN PANTALLA - ASPECTOS BASICOS (3)
Para imprimir variables en pantalla usando la función printf, cada tipo de dato tiene su especificador de control, la siguiente tabla muestra los especificadores básicos
Especificador
Significado
%d Usado para imprimir un valor entero en decimal
%f Usado para imprimir un valor reales
%n.d f Usado para imprimir un valor reales con n dígitos enteros y d dígitos decimales
%u Permite imprimir valores enteros sin signo
%c Usado para imprimir caracteres sencillos
%s Usado para imprimir cadenas de caracteres
printf("El número entero es %d y el número flotante es %f",numeroEntero,numeroFlotante);printf("La letra que falta sera %c",letra);
Tipos de Caracteres:Alfabéticos: a ... z, A ... ZNuméricos: 0 ... 9
Especiales: +, -, *, /, <, ... incluyendo los caracteres no imprimibles (retorno de carro, fin de cadena,...).
\n Nueva línea\t Tabulado\b Retroceso\r Retorno de carro\f Salto de página\\ Contrabarra\‘ Apóstrofe (comilla simple)\“ Comillas
MANEJO DE VARIABLES – ¿COMO ENTRAR INGRESAR VALORES A LAS VARIABLES?
¿Ahora entramos en el caso opuesto como puedo yo como usuario y no como programador asignar el valor a una variable, es decir como llevo un valor ingresado por teclado a una variable?
Al igual que en el caso escriba, C proporciona varias funciones para la entrada de datos. Una de las funciones de C que implementa la función LEA (implementada en Pseudocódigo) es la función scanf.
ASPECTOS BASICOS DE LA ENTRADA EN C
LEA(var1,var2,…,varN);
scanf(“especificacion_de_formato”, <<&>dato1,<&>dato2,. . .,<&>datoN>);
• Especificación de formato: Contiene caracteres de control asociados a las variables a las cuales serán los datos llevados.• Datos (dato1, dato2,…,datoN): Variables, en las cuales seran almacenados los datos ingresados desde el teclado.
scanf("%d",&numeroEntero);scanf("%f",&numeroFlotante);scanf("%c",&letra);
Ejemplo :
#include <stdio.h> int main() { int a; float b; printf( "Introduce los datos: " ); scanf( "%i %f", &a, &b ); printf( "\nHas introducido el entero %i y el flotante %f.\n", a, b ); return 0; }
Utilizando solo las técnicas que aprendió en este capitulo, escriba un programa que calcule los cuadrados y cubos de los números enteros del 0 al 10, y que imprima los valores resultantes en formato de tabla
Escriba un programa que reciba como entrada un numero entero de cinco digitos, que separe ese numero en sus digitosindividuales y los imprima, cada uno separado de los demas por tres espacios. [Sugerencia: use los operadores de division entera y modulo.] Por ejemplo, si el usuario escribe el numero 42339, el programa debe imprimir:4 2 3 3 9
Ejercicios: Desarrollar Pseudocodigo, diagrama flujo y Programa en C
* Ejercicios 1-4 de Diapositiva anterir
¿Qué se imprime (si acaso) cuando se ejecuta cada una de las siguientes instrucciones de C++? Si no se imprime nada,entonces responda “nada”. Suponga que x = 2 y y = 3.a) cout << x;b) cout << x + x;c) cout << "x=" ;d) cout << "x = " << x;e) cout << x + y << " = " << y + x;f) z = x + y;g) cin >> x >> y;h) // cout << "x + y = " << x + y;i) cout << "\n";