Sei sulla pagina 1di 33

República Bolivariana de Venezuela

Ministerio del Poder Popular para la Defensa (MPPD)


Universidad Nacional Experimental Politécnica de la Fuerza Armada
(UNEFA)
Maracay – Estado Aragua

Trabajo de Exposición (Programación)


Grupo 6

Carrera: Ingeniería Electrónica


Sección: 03S-2205-D1
Docente: Carmen Zafra
Autores:
 Héctor Bolívar
 Malena Peraza
 Bárbara Blanco
 Endher Peña
 Jesús Salvador
 Luis Ordosgoitti
 Jairo Duran

Maracay, 23 de marzo de 2019

1
Índice

Portada
Índice
Introducción………………………………………………………………………….4

Desarrollo:
Estructura de un programa…………………………………………………………6
 Estructura de un programa en General…………………………………..6
 Estructura de un programa en C…………………………………………..7

Tipos de datos……………………………………………………………………….8

Constantes………………………………………………………………………….10

Variables……………………………………………………………………………11

Expresiones………………………………………………………………………...13

Operadores…………………………………………………………………………14

 Operadores Aritméticos…………………………………………………...14
 Operadores Relacionales…………………………………………………15
 Operadores Lógicos……………………………………………………….17
 Operadores de Asignación (=)…………………………………………...19
 Operadores incrementales………………………………………………..20

Acumuladores……………………………………………………………………...21

Contadores…………………………………………………………………………22

 Declaración de una variable contadora…………………………………23


 Declaración de variables en C……………………………………………23
 Declaración de variable y asignación de valor…………………………24
 Declaración de variables dentro de un bucle…………………………...24

Switch (conmutador)……………………………………………………………….25

 ¿Cuándo utilizar switch? …………………………………………………27

2
Encabezamiento de un programa………………………………………………..27

Subprogramas……………………………………………………………………..28

Comentarios………………………………………………………………………..31

Conclusión………………………………………………………………………….32

Bibliografía………………………………………………………………………….33

3
Introducción

Desde que se ha iniciado y se ha ido desarrollando las ciencias de la


ingeniería y de la computación, hubo innovaciones tecnológicas para la
resolución de problemas que si bien uno podría realizarlas por métodos
manuales, resulta más conveniente y productivo que una máquina lo haga,
por eso se apertura oportunidades académicas y educativas para transmitir
el conocimiento necesario de indicarle a una máquina, ordenador o
computadora las instrucciones necesarias para que cumplan tareas tanto
cotidianas como las no tan convencionales, como por ejemplo, ayudar a que
el hombre llegara a la luna, la cual es Programar.
En programación tradicional, modular o estructurada un programa
describe una serie de pasos a ser realizados para la solución de un
problema, es decir es un algoritmo, en particular este modelo de
programación se usó mucho para generar programas o aplicaciones en
ambientes Pc's y con consolas, es decir el programa se ejecutaba en una
consola de MSDos por ejemplo, y el programa o aplicación se tenía que
portar físicamente a otros Pc's, al final de su ciclo de vida de este modelo se
había mejorado y ya era posible que se ejecutara en alguna ventana-consola
de ambientes Windows, con mejor interface como Font, colores, background,
etc.
Y como toda ciencia o estudio, la programación tiene términos que son
de mucha necesidad entenderlos para poder desarrollar algoritmos y
diagramas de flujos y posteriormente codificarlos para que una computadora
los entienda y ejecute, por ende el siguiente desarrollo tiene como objetivo
informar al lector sobre las distintas partes/bloques de un programa, como la
de declaración de variables o la de instrucciones, necesarios para que la
computadora sepa que elementos utilizará y como lo hará y así cumplir con
la tarea.

4
Posteriormente, se definen los tipos de datos posibles a utilizar para el
programador y como se declaran las variables y sean de cierto tipo de datos
entre otros términos que se les definirán y ejemplificarán con codificación en
Lenguaje C. Cabe aclarar que se enfatiza en ejemplificar estas declaraciones
en Lenguaje de programación C para que el lector, una vez leído el
desarrollo, ya tenga los conocimientos necesarios de desenvolverse dentro
de dicho lenguaje y pueda estar encaminado desde lo más básico para que
por sí mismo o con ayuda de algún docente/guía avance hacia lo más
avanzado.
Finalmente, un término importante que se define también es el de los
subprogramas y comentarios, herramientas necesarias para la resolución de
problemas y la realización de códigos.

5
Estructura de un programa

Un programa puede considerarse como una secuencia de acciones


(instrucciones) que manipulan un conjunto de objetos (datos).

Estructura de un programa en general

Existen dos partes o bloques que componen un programa:

1. Bloque de declaraciones: En este se detallan todos los objetos que


utiliza el programa (constantes, variables, archivos, etc.).

2. Bloque de instrucciones: conjunto de acciones u operaciones que se


han de llevar a cabo para conseguir los resultados esperados. El bloque
de instrucciones está compuesto a su vez por tres partes, aunque en
ocasiones no están perfectamente delimitadas, y aparecerán
entremezcladas en la secuencia del programa, podemos localizarlas
según su función. Estas son:
 Entrada de datos: La constituyen todas aquellas instrucciones que
toman datos de un dispositivo externo, almacenándolos en la memoria
central para que puedan ser procesados.
 Proceso: Está formado por las instrucciones que modifican los objetos a
partir de su estado inicial hasta el estado final, dejando éstos disponibles
en la memoria central.
 Salida de resultados: Conjunto de instrucciones que toman los datos
finales de la memoria central y los envían a los dispositivos externos.

6
Estructura de un programa en c

Todo programa escrito en C consta de una o más funciones, una de las


cuales se llama “main”.
El programa siempre comenzará por la ejecución de la función main.
Cada función debe contener:

 Cabecera de la función: Consta del nombre de la función, seguido de


una lista opcional de argumentos encerrados con paréntesis. Los
argumentos son símbolos que representan información que se le pasa a
la función desde otra parte del programa.

 Lista de declaración de argumentos: Se incluyen estos en la cabecera.


Los comentarios pueden aparecer en cualquier parte del programa,
mientras estén situados entre los delimitadores /*................ */ .Los
comentarios son útiles para identificar los elementos principales de un
programa o simplemente para orientar a un posible usuario de ese
código.

 Sentencia compuesta: Contiene el resto de la función. Cada sentencia


compuesta se encierra con un par de llaves, {.....}. Las llaves pueden
contener combinaciones de sentencias elementales (denominadas
sentencias de expresión) y otras sentencias compuestas. Así las
sentencias compuestas pueden estar anidadas, una dentro de otra. Cada
sentencia de expresión debe acabar en punto y coma (;).

7
Tipos de datos

El primer objetivo de un programa informático es el manejo de datos. Un


dato es toda aquella información que se puede tratar en un programa
informático.
Un dato dentro de un programa se caracteriza por llevar asociado un
identificador, un tipo y un valor.

 Identificador: Nombre para referenciar al dato dentro del programa.


 Tipo: El tipo de un dato determina el rango de valores que puede tomar el
dato y su ocupación en memoria durante la ejecución del programa
 Valor: Sera un elemento determinado dentro del rango de valores
permitidos por el tipo de dato definido.

Los tipos de datos existentes son los siguientes:

Tipo entero: representa números enteros con o sin signo, que estarán
compuestos por los dígitos del 0 al 9, pudiendo ser precedidos por los signos
+ o -. Algunos ejemplo de datos enteros son: 0, 23, -176, -1, etc.
Para definir variables en C se antepone la palabra reservada del tipo
al identificador de la variable. El tipo de datos entero se define en el lenguaje
de programación C por la palabra reservada int.
Para definir un tipo de dato en C se escribe lo siguiente:
Int nombre_variable = valor;

Tipo real: Se emplean para representar números reales (con decimales).


Para definir datos reales se antepone la palabra reservada float al
identificador de la variable.
Float identificador = valor;

8
Por ejemplo:
Float numero1, numero2;
Float numero3 = 123.43;
Float numero3;

Tipo carácter: Este tipo de datos se emplea para representar un


carácter perteneciente a un determinado código utilizado por el ordenador
(normalmente el código ASCII).
Para representar este tipo de dato se antepone la palabra reservada
char al identificador de la variable.
Char identificador = ‘valor’
Una constante tipo char se representa como un solo carácter encerrado
entre comillas simples.
Por ejemplo:
Char letra, letra2;
Char letra=’a’;

Tipo cadena de caracteres: Una cadena de caracteres es un número


de caracteres consecutivos (incluso ninguno) encerrado entre unos
delimitadores determinados, que en el lenguaje C son las comillas dobles.
Para definir variables de tipo cadena, estas se definen como vectores
de caracteres, esto es, anteponiendo la palabra reservada char al
identificador de la variable, y después entre corchetes la longitud máxima de
cadena.
Char identificador [cantidad] = “mensaje ”;

Por ejemplo: char cadena [20];


Char cadena [20] = “Hola mundo”;
Char cadena [ ] = “HOLA”;

9
Constantes

En la programación, se conoce como “constante” a aquel dato cuyo


valor o definición no pueden variar ni ser modificadas durante la ejecución de
un programa, es decir, son inalterables durante la ejecución. A diferencia de
las variables, las constantes se almacenan en la memoria Flash del micro
controlador para guardar el mayor espacio posible de memoria RAM.
Así mismo, en el lenguaje C existen varios tipos de constante, las
cuales son:
 De tipo entero: representa a un valor (dato) perteneciente al subconjunto
de números enteros (Z) representable por el computador, es decir, se
debe emplear el (-) y el (+) para definir si un valor es positivo o negativo,
de no indicarlo, el valor será positivo. Igualmente todos los valores a los
que se les coloque un cero a la izquierda (Ej: 0002) serán omitidos dichos
ceros.

10
 De tipo real: Se refiere a todas aquellas constantes de valor
perteneciente al conjunto de los números reales R, puede emplearse el
uso de puntos o comas y siempre debe estar seguido de una e o E
indicando el exponente.
Ejemplo: +65.65E+2 o 400.e-3
 De tipo carácter: Se refiere a cuando se le da a una constante el nombre
de un carácter representable por el computador entre comillas simples, y
en caso de querer representar una comilla simple debe anteponerse una
barra invertida.
 De tipo cadena: Este tipo de constante aplica para cuando se quiere
representar una secuencia o cadena de caracteres, por ejemplo:
“Alejandra” y si queremos representar a las comillas en una cadena, se
debe anteponer una barra invertida, por ejemplo: “Maria \”18 años\””

Continuando la idea, para aplicar cualquier tipo de constante es


necesario declararla o anunciarla para que sea ejecutable, en el lenguaje C,
las constantes se declaran con la directiva #define seguida del nombre y
valor de la constante, teniendo en consideración que en este lenguaje de
programación solo puede emplearse una línea de código por constante y
todo valor asignado a una constante debe ser único pues es invariable.

Ejemplo: #define precio agua 100

Variables

Se conoce como "variable" al nombre que se le da a más de una


posición de memoria donde el sistema almacena distintos valores para una
misma entidad dentro del código, estas son almacenada en la memoria RAM
y por lo tanto, el sistema de contabilizar todas las variables existentes antes
de ejecutarse para determinar cuánta memoria precisará para procesar cada

11
variable.
En el lenguaje C, las variables poseen un nombre y un tipo, que no es más
que el tipo de dato al que se hace referencia en la variable; en concordancia,
las variables son opuestas a las constantes puesto que sus valores son,
valga la redundancia, variables, cambiantes, de estatus modificable.
Al igual que las constantes, las variables deben ser declaradas en el
lenguaje C, que no es más que establecer que la variable "existe"
Las variables pueden diferenciarse de acuerdo a su abreviación para
declarar:
 int: valor entero entre los números 32768 al 32767.
 long: Valor entero entre números largos 2147483648 a 2147483647.
 float: valores con hasta seis decimales.
 Double: valores con hasta 14 decimales.
 char: Valores alfanuméricos, es decir, letras (caracteres) o números.

La declaración de variables funciona para especificar el tipo de valor


con el que se está trabajando.
Ejemplo: int edadpersona = 16 (aplicando esto último como el valor
inicial para la variable).
La declaración y especificación de qué tipo de variable es sumamente
importante por las siguientes razones:
Se ahorra memoria (recuérdese que las variables se almacenan en la
memoria RAM).
 Se evitan confusiones en cuanto a los cálculos de valores para el
computador.
 Es más fácil identificar errores de esta forma.

12
Expresiones

Una expresión representa una unidad de datos simples, tal como un


número o un carácter, que puede estar formada por combinaciones de
constantes, variables y operadores de los cuales, al ser ejecutados, se podrá
obtener un valor de algún tipo (entero, flotante o carácter) que será el
resultado que tomará dicha expresión. Estas pueden estar formadas por
otras expresiones más sencillas que se evaluarán de acuerdo a las reglas
matemáticas que permiten determinar el orden de evaluación de los
operadores:

 Las expresiones que están enceradas en paréntesis se evalúan primero.


En caso de existir anidamiento de paréntesis se evaluarán primero las
expresiones más internas.

 Las operaciones aritméticas dentro de una expresión sueles seguir el


siguiente orden:
1. Exponencial (raíz, elevación a potencias).
2. Multiplicación y división.
3. Sumas y restas.
4. Devolver la parte entera del cociente o el resto de una división.

 Ante una secuencia de operadores de igual precedencia, la evaluación se


realiza según el orden de escritura, de izquierda a derecha. A
continuación se muestran una serie de expresiones sencillas:

a + b (suma de los valores asignados a las variables “a” y “b”).


x = y (el valor que contenga “y” se le asigne a “x”).
e = a + b (se asigna a la variable “e” el valor de la expresión de
suma “a+b”).

13
++i
La última expresión hace que el valor de la variable i se
incremente en 1. Por tanto, la expresión es equivalente a “i = i + 1”

Operadores

Un operador es un carácter o grupo de caracteres que actúan sobre


expresiones que contienen una, dos o más variables para realizar una
determinada operación con un determinado resultado. Los datos sobre los
que actúan los operadores pueden ser unarios, binarios y ternarios, según
actúen sobre uno, dos o tres operandos.

Operadores Aritméticos

Los operadores aritméticos como su nombre lo indica, realizan


operaciones aritméticas utilizando operandos numéricos (ya sea en forma de
variables, constantes simbólicas o constantes numéricas) que generan un
resultado tipo numérico. Existen cinco operadores aritméticos en C:
Operador Propósito
+ Suma
- Resta
* Multiplicación
/ División
% Módulo

 El operador % es a veces denominado el operador resto de división


entera. Este operador se aplica solamente a constantes, variables o
expresiones de tipo int.

14
 No hay operador de potenciación en C. Sin embargo, hay una función de
biblioteca (pow) que realiza la potenciación.

 El operador de división / requiere que el segundo operando sea no nulo.

Los operandos sobre los que actúan los operadores aritméticos deben
representar valores numéricos. Por tanto, los operandos deben ser
cantidades enteras, en coma flotante o caracteres (recuérdese que las
constantes de carácter representan valores enteros, los determinados por el
conjunto de caracteres de la computadora.

Ejemplo: Supóngase que unas variables a y b tienen valores 10 y 3,


respectivamente. Se muestran a continuación varias expresiones aritméticas
en las que aparecen estas variables, acompañadas· del resultado.

Expresión Valor
a+b 13
a-b 7
a*b 30
a/b 30
a%b 1

Operadores Relacionales

En los lenguaje de programación una característica imprescindible es la


de considerar alternativas, esto es, la de proceder de un modo u otro según
se cumplan o no ciertas condiciones relacionando o comparando datos con
ciertos operadores a partir de los cuales se tomaran decisiones, y en base a
ese resultado se procederá.

15
En el lenguaje natural, existen varias palabras o formas de indicar si se
cumple o no una determinada condición. En inglés estas formas son (yes,
no), (on, off), (true, false), etc. En C un 0 representa la condición de false, y
cualquier número distinto de 0 equivale a la condición true. Cuando el
resultado de una expresión es true y hay que asignar un valor concreto
distinto de cero, por defecto se toma un valor unidad.

Los operadores relacionales de C son los siguientes:


Operador Significado
< menor que
<= menor o
igual
> mayor que
>= mayor o
igual
== Igual que
!= Diferente de

 Los operadores relaciónales y lógicos tiene menor prioridad que los


operadores aritméticos antes descritos, así, escribir 10>3+9 es
equivalente a escribir 10>(3+9).

 Todos los operadores relacionales son operadores binarios (tienen dos


operandos), y su forma general es la siguiente: expresion1 op
expresion2 (donde op es uno de los operadores (==, <, >, <=, >=, !=). El
funcionamiento de estos operadores es el siguiente: se evalúan
expresion1 y expresion2, y se comparan los valores resultantes. Si la
condición representada por el operador relacional se cumple, el resultado
es 1; si la condición no se cumple, el resultado es 0.

16
Ejemplo 1:
(2==1) // Resultado=0 porque la condición no se cumple.
(3<=3) // Resultado=1 porque la condición se cumple.
(3<3) // Resultado=0 porque la condición no se cumple.
(1!=1) // Resultado=0 porque la condición no se cumple.

Ejemplo 2: A continuación se incluyen algunos ejemplos de estos


operadores aplicados a constantes “i, j, k” que son variables enteras con
valores asignados 1,2 y 3, respectivamente:

Expresión Interpretación Valor


i< j verdadero 1
(i + j ) >= k verdadero 1
( j + k) > (i + 5) falso 0
k != 3 falso 0
j == 2 verdadero 1

Operadores Lógicos

También llamados Booleanos, permiten establecer lo que se denomina


una condición compuesta, es decir, que ya no es la evaluación de si una
condición es verdadera o falsa sino que hay más de una condición que
evaluar y, según sea el resultado de evaluar todas las condiciones juntas, se
evaluara la estructura condicional. Es por esto la necesidad de los
operadores lógicos, sirven para enlazar cada una de estas condiciones
simples y convertirlas en lo que es una condición compuesta. El lenguaje C
tiene dos operadores lógicos:

17
 El operador AND (&&): para que una condición compuesta sea
verdadera, todas las condiciones simples deben ser verdaderas. Para ver
esto mejor se debe ver la tabla de la verdad del operador:

Tabla de la verdad del operador AND


Condición Condición Resultado
1 2
Falso Falso Falso
Falso Verdadero Falso
Verdadero Falso Falso
Verdadero Verdadero Verdadero

Se comprueba que para que toda una expresión sea falsa basta que
alguna de las condiciones lo sea.

 El operador OR (||): para que una condición compuesta sea verdadera


basta con que una sola de las condiciones simples sea verdadera.
Tabla de la verdad del operador OR
Condición Condición Resultado
1 2
Falso Falso Falso
Falso Verdadero Verdadero
Verdadero Falso verdadero
Verdadero Verdadero Verdadero

Se comprueba que para que toda una expresión sea verdadera basta
que alguna de las condiciones lo sea.

18
 El operador NOT (!): este operador lo que hace es negar el resultado de
una expresión condicional. Es decir, invierte el resultado de la evaluación.

Tabla de la verdad del operador


NOT
Condición Resultado
Falso Verdadero
Verdadero falso

Se comprueba que el resultado de evaluar una expresión condicional


que es verdadera el operador NOT dice que es falso. Por lo contrario, si la
expresión es falsa entonces el operador dice que es verdadero.

Operadores de Asignación (=)

Los operadores de asignación atribuyen a una variable –es decir,


depositan en la zona de memoria correspondiente a dicha variable– el
resultado de una expresión o el valor de otra variable (en realidad, una
variable es un caso particular de una expresión). Estas expresiones se
escriben de la siguiente forma: identificador = expresión
He aquí algunas expresiones de asignación que hacen uso de este
operador: a = 3; x = y; delta = 0.001; suma = a + b; área = longitud * anchura.
Así pues, una variable puede aparecer a la izquierda y a la derecha del
operador (=). Sin embargo, a la izquierda del operador de asignación (=) no
puede haber nunca una expresión: tiene que ser necesariamente el nombre
de una variable. Es incorrecto, por tanto, escribir algo así como: a + b = c; //
incorrecto
Existen otros cuatro operadores de asignación (+=, -=, *= y
/=) formados por los 4 operadores aritméticos seguidos por el carácter de

19
igualdad. Estos operadores simplifican algunas operaciones recurrentes
sobre una misma variable. Su forma general es:
variable op= expresion; donde op representa cualquiera de los
operadores (+ - * /). La expresión anterior es equivalente a: variable =
variable op expresion;
A continuación se presentan algunos ejemplos con estos operadores de
asignación:
distancia += 1; equivale a: distancia = distancia + 1;
rango /= 2.0 equivale a: rango = rango /2.0
x *= 3.0 * y - 1.0 equivale a: x = x * (3.0 * y - 1.0)

Es importante recordar que el operador de asignación = y el operador


de igualdad == son distintos. El operador de asignación se utiliza para
asignar un valor a un identificador, mientras que el operador de igualdad se
usa para determinar si dos expresiones tienen el mismo valor. No se pueden
utilizar estos operadores de forma indistinta.

Operadores incrementales

Los operadores incrementales (++) y (--) son operadores unarios que


incrementan o disminuyen en una unidad el valor de la variable a la que
afectan. Estos operadores pueden ir inmediatamente delante o detrás de la
variable. Si preceden a la variable, ésta es incrementada antes de que el
valor de dicha variable sea utilizado en la expresión en la que aparece. Si es
la variable la que precede al operador, la variable es incrementada después
de ser utilizada en la expresión. A continuación se presenta un ejemplo de
estos operadores:

i = 2;
j = 2;

20
m = i++; // después de ejecutarse esta sentencia m=2 e i=3
n = ++j; // después de ejecutarse esta sentencia n=3 y j=3

Estos operadores son muy utilizados. Es importante entender muy bien


por qué los resultados m y n del ejemplo anterior son diferentes.

Acumuladores

Un acumulador es una variable no necesariamente entera pero sí


numérica que permite, como su nombre lo indica, ir acumulando, añadiendo
o almacenando un valor que puede ir variando de un evento a otro. Se
caracteriza porque una variable acumulador siempre incrementa o
decrementa el valor que ya tiene a partir de otra variable.
Por lo general, una operación de asignación “encima” el valor nuevo
borrando el valor viejo de una variable. Se utiliza para efectuar sumas
sucesivas:
Acumulador = acumulador + 1
Las siguientes son características de una expresión de acumulación:
 La variable acumuladora debe aparecer a la derecha y a la izquierda
del operador de asignación
 La acumulación se realiza con los operadores aritméticos: +, -, *, /.
 Los operadores booleanos y relacionales no pueden ser parte de una
expresión de acumulación, puesto que estos valores no pueden sumarse o
multiplicarse.
 Se pueden escribir expresiones de acumulación de una forma
elegante y corta utilizando los operadores +=, -=, *= y /=. (Aquí puedes leer
un poco más sobre el tema)
 En las operaciones de suma y multiplicación no importa si el
acumulador no está exactamente antes y después del operador =, puesto

21
que estas operaciones son conmutativas. Sin embargo, debes tener mucho
cuidado con la resta y la división, pues no es lo mismo:
10-3 que 3-10
 Aunque se puede utilizar, es muy raro acumular residuos de
divisiones. Claro que, si el problema lo exige, sabes que deberás usar el
operador %. Sólo recuerda que el acumulador debe ser una variable entera,
ya que el operador % sólo funciona sobre valores enteros.

El acumulador debe ser inicializado antes de ser utilizado. Pero el valor


de inicialización dependerá del tipo de operación que nos ayudará a
acumular valores: puede ser el resultado de sumas sucesivas (que es lo más
común), pero también de multiplicaciones, o incluso de restas o divisiones.

Contadores

En programación, se llama contador a una variable cuyo valor se


incrementa o decrementa en un valor fijo (en cada iteración de un bucle). Un
contador suele utilizarse para contar el número de veces que itera un bucle.
Pero, a veces, se utiliza para contar, solamente, aquellas iteraciones de un
bucle en las que se cumpla una determinada condición.
Un bucle o ciclo, en programación, es una secuencia que ejecuta
repetidas veces un trozo de código, hasta que la condición asignada a dicho
bucle deja de cumplirse. Los tres bucles más utilizados en programación son
el bucle while, el bucle for y el bucle do-while.
Un ejemplo de la vida real seria: Suponga que está en la entrada de un
evento y su jefe le pide que le diga al final cuántas personas han venido al
evento, ¿qué hace usted?
Lo más lógico sería tomar una hoja e ir haciendo una marca por cada
persona que entra, al final lo que queda es contabilizar cuantas marcas tiene
en la hoja y esa será la cantidad de personas que han entrado.

22
Una variable contadora en algoritmos hace precisamente esto mismo,
lleva la contabilidad de repeticiones, eventos, accesos, etc.
La forma básica general de un contador es:

contador = contador + constante


o
contador = contador — constante

Declaración de una variable contadora

En programación, las líneas de código de declaración son aquellas en


donde se escriben las variables que se usarán y los tipos de datos de cada
una.
Algunos lenguajes de programación obligan al programador a declarar
las variables que se usarán y sus tipos.
Al declararse las variables, el programa en ejecución reserva ese
espacio de memoria según el tipo de datos escogido.

Declaración de variables en C

El siguiente código declara dos variables llamadas numero1 y numero2


que contendrán números enteros (int) y una tercera llamada numero3 con un
numero flotante (float).
int numero1, numero2;
float numero3;

En lenguaje C y C++ todas las variables deben declararse antes de ser


usadas, de lo contrario dará un error de compilación. Veamos otro ejemplo
donde declaramos variables de otros tipos:

23
int main()
{
char caracter;
short valor;
int numero
long numeroLargo;
float numeroReal;
double numeroRealDoble;

return 0;
}

Declaración de variable y asignación de valor

También se puede declarar una variable y asignarle un valor


directamente. Por ejemplo:

int contador = 0;

Esta línea declara una variable de nombre contador del tipo entero
iniciándola en valor 0 (cero).

Declaración de variables dentro de un bucle

También es posible declarar variables dentro de un bucle, las variables


declaradas dentro de un bucle, serán accesibles sólo desde el propio bucle,
esto es, tendrán un ámbito local para el bucle. Por ejemplo el siguiente bucle
for:

for (int i=0; i < 100; i++) ...

24
En este caso el bucle FOR declara la variable de nombre "i".

Switch (Conmutadores)

Es una palabra clave usada en la mayoría de lenguajes de


programación.
Usar switch ayuda a simplificar el código y evita confusiones, ya que
organiza en varias ramas el código que va a ser ejecutado.
Un ejemplo de cómo se escribe la sentencia switch sería el siguiente:
switch (variable)
{
case valor1:
instruccion1;
break;
case valor2:
instruccion2;
break;
[default:]
instruccion_default;
}
Vemos que existen varias palabras claves, y una estructura particular.
Analicemos cada parte:
 Como vemos, primero de todo usamos la palabra reservada switch.
 La variable es para verificar el valor que tiene almacenado.
 La palabra case indica el valor que va a verificar. Lo habitual es que sea
un valor numérico o un texto. La combinación de la palabra case y su
valor se llama etiqueta case.

25
 El valor literal es cualquier valor válido que la variable que vamos a
evaluar contiene. Podemos poner una etiqueta case por cada valor que
queremos evaluar. Los valores de la etiqueta case no pueden ser
variables, o expresiones o métodos. Pero sí que pueden ser constantes.
 La sentencia break es una palabra clave opcional, que hace que el flujo
del código termine dentro de toda la sentencia switch. Si no existiese,
todas las instrucciones que vemos dentro del código se ejecutarían, hasta
encontrar una palabra break.
 La palabra clave default indica el bloque de código si no satisface ninguna
de las etiquetas case que hemos escrito. Podemos decir que esta
etiqueta es parecida a la sentencia else. También es una etiqueta
opcional.

Ejemplo de switch

Vemos un ejemplo de una sentencia switch, dónde con una variable


almacene el número del mes, un valor entre 1 y 12, y nos diga cuantos días
tiene ese mes.
switch(mes)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
print("Hay 31 días en este mes");
break;
case 2:

26
print("Hay 28 días en este mes");
break;
case 4:
case 6:
case 9:
case 11:
print("Hay 30 días en este mes");
break;
default:
print("Mes incorrecto");
break;
}
Como vemos, es un buen ejemplo para ver que es posible juntar varias
etiquetas case

¿Cuándo utilizar switch?

La sentencia switch se utiliza solo para verificar la igualdad, como


hemos visto. No puedes verificar si los valores son más grandes o más
pequeños en la variable. También sirve para verificar valores simples.
Como vemos, tiene una gran similitud con la
sentencia if y else. Obviamente, es posible combinar todas las sentencias,
como por ejemplo poner dentro de un if una sentencia Smith.

Encabezamiento de un programa

La primera está delimitada por la Cabecera del programa y por la


palabra reservada BEGIN, y en ella se declaran o se definen todos los
elementos habituales de programación (variables, subprogramas, etc.) que
se van a utilizar en el programa y que están disponibles en el lenguaje.

27
La Zona de Instrucciones, delimitada por las palabras reservadas
BEGIN y END, es la zona de las instrucciones ejecutables (las cuales utilizan
los elementos declarados en la zona de declaraciones), es decir, la
codificación del algoritmo que resuelve el problema para el que fue diseñado
el programa.
La cabecera del programa consta de la palabra reservada PROGRAM
seguida del Nombre del Programa y de punto y coma (;). El punto y coma es
el separador de sentencias en Pas-cal. En lenguaje C un programa puede
tener un encabezamiento de la siguiente forma:

#include <stdio.h>  Encabezamiento


main()
{
/* Este es mi primer programa en C*/
printf("Bienvenido a la programación en lenguaje C\n");

return 0;
}

Subprogramas

Los problemas reales que se le plantean a un departamento de


informática requieren programas de una cierta complejidad y a veces de gran
tamaño.
Abordar el diseño de un programa de estas características de una
forma directa es una tarea, en la mayoría de los casos, bastante difícil. Lo
más adecuado es descomponer el problema ya desde su fase de análisis, en
partes cuya resolución sea más asequible. La programación de cada una de
estas partes se realiza independientemente de otras, incluso, en ocasiones,
por diferentes personas.

28
De esta forma se pueden resolver problemas extremadamente
complejos.
Por otro lado, la depuración de puesta a punto del programa hace
necesario que el listado del mismo sea fácilmente comprensible. En este
sentido conviene subdividir el programa de tal manera que cada parte sea
suficientemente reducida y sencilla para su desarrollo y mantenimiento.
El diseño descendente o diseño top-Down consiste en una serie de
descomposiciones sucesivas del problema inicial, que describen el
refinamiento progresivo del repertorio de instrucciones que van a formar
parte del programa.

La utilización de esta técnica de diseño tiene los siguientes objetivos


básicos:
1. Simplificación del problema y de los subprogramas resultantes de cada
descomposición.
2. Las diferentes partes del problema pueden ser programadas de modo
independiente e incluso por diferentes personas.
3. El programa final queda estructurado de forma de bloques o módulos, lo
que hace más sencilla su lectura y mantenimiento.

29
Ejemplo: Obtención de las actas de evaluación final, ordenadas
alfabéticamente, de los alumnos de un centro docente, a partir de un archivo
de alumnos, un archivo de asignaturas y un archivo de calificaciones.

Programa Principal: Describe la solución completa del problema y


consta principalmente de llamadas a subprogramas. Estas llamadas son
indicaciones al procesador de que debe continuar la ejecución del programa
en el subprograma llamado, regresando al punto de partida una vez lo haya
concluido.
Subprogramas: a éstos se les suele denominar declaración de
subprogramas. Figuran agrupados en distinto lugar al del programa principal.
Su estructura coincide básicamente con la de un programa, con alguna
diferencia en el encabezamiento y finalización. En consecuencia, un
subprograma puede tener sus propios subprogramas correspondientes a un
refinamiento del mismo.
La función de un subprograma es resolver de modo independiente una
parte del problema.
Un subprograma es ejecutado por el procesador solo cuando es
llamado por el programa principal o por otro subprograma.
Sub programas internos: Sol los que figuran junto con el programa
principal (en el mismo listado).

30
Sub programas externos: Son aquellos que figuran físicamente
separados del programa principal, es decir, en distintos archivos fuente.
Pueden ser compilados separadamente, e incluso pueden haber sido
codificados en un lenguaje de programación distinto al del programa
principal.
Generalmente se enlazan con el programa principal en la fase de
montaje, cuando ya son módulos objeto, es decir, traducidos a lenguaje
máquina.

Comentarios

Son frases que se incluyen de forma moderada en el diseño de un


algoritmo (en la codificación suele ser más recomendable su uso) con
intención de aclarar el cometido o función de un objeto o conjunto de
instrucciones. Otra función también es la de bloquear líneas de códigos que
no se usarán.
La forma en la que se hacen comentarios dentro de un programa ya
codificado en C es tipeando // y seguido de eso el comentario que se desea
tipear, por ejemplo:

Posteriormente, si se desea hacer comentarios con varias líneas, se


tipea /* para iniciar el comentario, se escribe todo lo que se desea y
finalmente se cierra tipeando */. Un ejemplo es:

31
Conclusión

Como se pudo leer en el anterior desarrollo, para saber generar o crear


código es necesario estar informado sobre ciertos términos importantes para
la realización de los mismos, se puede decir que un programa está
fragmentado por trozos que cumplen ciertas funciones como un fragmento en
donde van declaradas las variables, otro donde puede haber sub rutinas.
También se desarrolló conceptos esenciales como los de las variables,
operadores, acumuladores, entre otros, que no son más que elementos
necesarios para facilitar la realización de los algoritmos y a su vez del código
del programa que se esté desarrollando.
Dentro de los departamentos o equipos de trabajo informático, los
problemas que se les plantean ya sea originarios de una empresa, una
institución académica, o ya sea que desde el propio ámbito académico se les
plantee problemas para evaluar su capacidad de resolver problemas a través
de la programación, siempre lo necesario para poder resolver un gran
problema (macro problema) es dividirlo en pequeños problemas que sean
más fáciles de resolver, creando sub programas los cuales serán llamados
por el problema principal.
Por ende, se utilizan muchas herramientas como los switch, que lo que
hacen es activar y desactivar funciones del programa a conveniencia del
rendimiento del mismo y de lo que se necesite para la tarea.
Finalmente, se puede decir que un programa debe cumplir no solo los
objetivos satisfactoriamente, sino que con las herramientas definidas en el
desarrollo, el programador debe pensar cuando este diseñando el programa
en la eficiencia, diseño sencillo del código para su posible reutilización, orden
y fácil lectura del código (usando comentarios y asignándole nombres
simples a las variables) entre todos los métodos para hacer el código lo más
eficaz posible.

32
Bibliografía

 Metodología de la Programación – Eduardo Alcalde y Miguel García. 2da


edición.

 Programación en C de la serie SCHAUM

 https://www.aprenderaprogramar.com/index.php?option=com_content&vie
w=article&id=908:operadores-logicos-y-relacionales-en-lenguaje-c-igual-
que-distinto-and-aa-or-not-ejemplos-cu00519f&catid=82:curso-basico-
programacion-lenguaje-c-desde-cero&Itemid=210

 http://www.juntadeandalucia.es/averroes/centrostic/14005663/helvia/aula/
archivos/repositorio/0/164/html/lenguajec/unidad4.htm

 www.carlospes.com

 http://blog.espol.edu.ec/programando/variables-y-constantes-en-lenguaje-
c/

 http://platea.pntic.mec.es/vgonzale/cyr_0204/cyr_01/control/lengua_C/vari
ables.htm

https://www.aprenderaprogramar.com/index.php?option=com_content&vie
w=article&id=899&catid=82&Itemid=210

33

Potrebbero piacerti anche