Sunteți pe pagina 1din 81

ALGORITMOS

Que es un Algoritmo?
Definicin 1: Un algoritmo se puede definir como una
secuencia finita de instrucciones cada una de las cuales
tiene un significado claro y puede ser efectuada con la
una cantidad finita de esfuerzo en una longitud de
tiempo tambin finito.

Definicin 2: Un algoritmo es una serie de pasos
organizados que describe el proceso que se debe
seguir, para dar solucin a un problema especfico.

Definicin 3: Un algoritmo es un mtodo para resolver
un problema.

Que es un Algoritmo?
En la ciencia de la computacin y en la programacin, los
algoritmos son ms importantes que los lenguajes de
programacin o las computadoras. Un lenguaje de
programacin es slo un medio para expresar un
algoritmo y una computadora es slo un procesador para
ejecutarlo

Luis Joyanes
Ejemplo de un Algoritmo
Hacer un procedimiento que muestre los pasos
necesarios para cambiar una llanta pinchada de un
carro.

Una posible solucin sera:
1. Iniciar
2. Sacar la llanta y herramientas de la maleta del carro
3. Sacar la llanta pinchada
4. Colocar la llanta buena
5. Guardar la llanta pinchada y la herramienta
6. Subirse al carro
7. Reanudar el viaje
8. Terminar

Caractersticas de un Algoritmo
Un algoritmo debe ser preciso e indicar el orden de
realizacin de cada paso.
Un algoritmo debe estar definido. Si se sigue un
algoritmo dos veces, se debe obtener el mismo
Un algoritmo debe ser finito. Si se sigue un algoritmo,
se debe terminar en algn momento; o sea, debe tener
un nmero finito de pasos
Entrada: puede tener cero o mas elementos de entrada.
Salida: Debe producir un resultado. Los datos de salida
sern los resultados de efectuar las instrucciones.

Definicin de un Algoritmo
Entrada PROCESO Salida
Definicin de un Algoritmo
EJEMPLO: Se desea conocer cuntos meses han
transcurrido entre enero de 1951 y enero de 2002.

Anlisis del algoritmo
En este paso debemos conocer: punto de partida (datos
de entrada), punto de llegada (datos de salida) y
proceso (clculos necesarios para obtener los
resultados)
Datos de entrada
Observe que estos valores se estn proporcionando en
el enunciado. Se esta dando el ao inicial y el ao final
como valores fijos, o sea, que actuarn como campos
constantes en el algoritmo. Estos permiten determinar
que hay cero datos de entrada a travs de variables.

Definicin de un Algoritmo
Datos de salida
Nmero total de meses transcurridos entre los aos
1951 y 2002.
Proceso
Para conocer el nmero de meses es necesario,
primero, conocer el nmero de aos que hay entre las
dos fechas. Se necesitar de otra variable que almacene
este valor que se obtiene restando el ao menor del
mayor; este resultado se multiplica por doce (nmero
de meses del ao) y as se obtendr el nmero de
meses que hay en dicho perodo, el cual debe ser
guardado en otra variable.

Tcnicas de Representacin de
Algoritmos
Diagramas de Flujo:















Tcnicas de Representacin de
Algoritmos

Diagramas Nassi-Shneiderman o Chapin















Tcnicas de Representacin de
Algoritmos
Pseudocdigo













Etapas para la solucin de un
problema
1. Anlisis del problema, definicin y delimitacin:
Considerar los datos de entrada, el proceso que debe
realizar el computador y los datos de salida.
Definir las siguientes preguntas:
Qu entradas se requieren? (tipo y cantidad)
Cul es la salida deseada? (tipo y cantidad)
Qu mtodo produce la salida deseada?

2. Diseo y desarrollo del algoritmo (se utiliza
pseudocdigo, escritura natural del algoritmo,
diagramas de flujo, etc. )
3. Prueba de escritorio. Seguimiento manual de los pasos
descritos en el algoritmo. Se hace con valores bajos y
tiene como fin detectar errores.
4. Codificacin. Seleccin de un lenguaje de
programacin y digitacin del pseudocdigo haciendo
uso de la sintaxis y estructura gramatical del lenguaje
seleccionado.

1.1 Qu es un Lenguaje de
Programacin?

Los ordenadores (computadores) son herramientas muy
tiles, pero por s solos no pueden actuar o tomar
decisiones. Los programas que forman parte de los
ordenadores, son los que nos hacen parecer que son
aparatos inteligentes.

Los programas son un conjunto de instrucciones
escritos en un lenguaje determinado, el cual consta de
una sintaxis y una serie de smbolos, donde cada uno
cuenta con distintas funciones. Estos lenguajes son
denominados lenguaje de programacin.
1.1 Qu es un Lenguaje de
Programacin?


Un lenguaje de programacin es un conjunto limitado
de palabras y de smbolos que representan
procedimientos, clculos, decisiones y otras operaciones
que puede ejecutar un computador.
Cronologa en el desarrollo de algunos Lenguajes de Programacin
INTRODUCCIN AL LENGUAJE
2.2 Modelo de Compilacin de C
Preprocesador
Compilador
Enlazador
Cdigo
Fuente
Cdigo Objeto
Libreras
Cdigo Ejecutable
Recibe el cdigo fuente
producido por el preprocesador
y lo traduce a cdigo objeto
(ficheros con extensin .obj en
Windows, o extensin .o en
UNIX)
Toma como entrada el cdigo fuente y es el
responsable de eliminar los comentarios y de
interpretar las directivas especiales del
preprocesador, denotadas por el smbolo #,
como son #include y #define.
Si algn archivo fuente hace referencia a
funciones de una biblioteca o de funciones
que estn definidas en otros archivos fuentes,
el enlazador combina estas funciones (con
main()) para crear un archivo ejecutable.
2.3 Estructura de un Programa C
El archivo fuente de un programa en C debe grabarse
con un nombre y tener la extensin .c, las libreras
tienen extensin .h.
Directivas del Preprocesador
Funcin Principal
Cuerpo del Programa
Comentario de una Lnea
COMENTARIOS

En C pueden colocarse comentarios en cualquier lugar
del programa, utilizando los smbolos /* */.

El compilador de C ignora todo el texto entre el inicio
del comentario (/*) y el final del mismo (*/).

Aadir comentarios a un programa en C no incrementa
el tamao de los ficheros objeto ni ejecutable, ni
tampoco ralentiza la ejecucin del programa.

/* */ Se utiliza para documentar varias lneas.

// Se utiliza para documentar una sola lnea.

2.3 Estructura de un Programa C
DIRECTIVAS DEL PREPROCESADOR

Las directivas del preprocesador, se denotan con el
smbolo #; stas son: #include y #define.

#include: Incluye un fichero externo dentro del fichero
fuente. Se usarn los smbolos < > para indicar que el
fichero se encuentra en un directorio del entorno de
compilacin, diferente del directorio de trabajo actual.
Por el contrario, se usarn los smbolos " " para indicar
ficheros locales. Por ejemplo:

#include <math.h> incluye el fichero con las definiciones de
las funciones matemticas de la librera estndar.
#include <stdio.h> incluye el fichero con las definiciones de
las funciones de entrada y salida de la librera estndar.
#include "funciones.h" incluye el fichero funciones.h del
directorio actual.
2.3 Estructura de un Programa C
DIRECTIVAS DEL PREPROCESADOR

#define: Define un nombre simblico. Cuando el
preprocesador encuentra un nombre simblico en el
programa lo sustituye por el valor que se le haya
asociado con la directiva #define. Por ejemplo:

#define NUM_ELEMENTOS 100 define la constante
NUM_ELEMENTOS con valor 100.

#define PI 3.1416 define la constante PI.
2.3 Estructura de un Programa C
FUNCIN MAIN( )

En la funcin principal main se desarrolla todo el cdigo
del programa.

Los parntesis despus de main indican que es una
funcin.

Es una funcin que se auto-ejecuta cuando se compila
el programa.

Est acompaada de los smbolos llave izquierda { y
llave derecha } para indicar el inicio ( { ) y fin ( } ) del
programa.
2.3 Estructura de un Programa C

printf: Funcin predefinida en la librera estndar stdio.h, para
mostrar un mensaje en la pantalla. Dicho mensaje debe estar
encerrado entre comillas dobles .

\n: Secuencia de escape que significa nueva lnea y hace que
en pantalla el cursor se coloque al principio de la siguiente
lnea.

return 0: Indica que el programa finaliz correctamente.
2.4 Primeros Pasos con C
2.4 Primeros Pasos con C
Secuencia
de Escape
Descripcin
\n
Nueva lnea. Coloca el cursor en el principio de la
siguiente lnea.
\t
Tabulador horizontal. Mueve el cursor al siguiente
tabulador.
\r
Retorno de carro. Coloca el cursor hacia el principio de
la lnea actual; no avanza a la lnea siguiente.
\a Alerta. Hace sonar la campana del sistema.
\\
Diagonal invertida. Imprime un carcter de diagonal
invertida en un enunciado printf.
\
Doble comilla. Imprime un carcter de doble comilla en
un enunciado printf.
Algunas secuencias de escape comunes
2.4 Primeros Pasos con C
2.4 Primeros Pasos con C
Ejercicios


Escriba tres (3) programas para imprimir las siguientes
figuras:








Qu imprime el siguiente fragmento de cdigo?



Ejercicios


Escriba un programa que imprima el siguiente texto:

EMPEZANDO A PROGRAMAR EN
3.1 Tipos de Datos

El Lenguaje C proporciona los siguientes tipos de datos
elementales:

Nmeros Enteros (int)
Caracteres (char)
Nmeros de Coma Flotante (float, double)

Datos Enteros
char signed char unsigned char
signed short int signed int signed long int
unsigned short int unsigned int unsigned long int
Datos Reales float double long double
Tipos de datos fundamentales (notacin completa)
3.1 Tipos de Datos
La palabra char hace referencia a que se trata de un
carcter (una letra mayscula o minscula, un dgito, un
carcter especial).

La palabra int indica que se trata de un nmero entero,
mientras que float se refiere a un nmero real (tambin
llamado de punto o coma flotante).

Los nmeros enteros pueden ser positivos o negativos
(signed), o bien esencialmente no negativos (unsigned).

Los caracteres tienen un tratamiento muy similar a los
enteros y admiten estos mismos cualificadores.
3.1 Tipos de Datos
En los datos enteros, las palabras short y long hacen
referencia al nmero de cifras o rango de dichos
nmeros y en los datos reales las palabras double y long
apuntan en esta misma direccin.

Esta nomenclatura puede simplificarse: las palabras
signed e int son las opciones por defecto para los
nmeros enteros y pueden omitirse, resultando la
siguiente tabla:
Datos Enteros
char signed char unsigned char
short int long
unsigned short unsigned unsigned long
Datos Reales float double long double
Tipos de datos fundamentales (notacin abreviada)
3.1 Tipos de Datos
Resumen de Tipos de Datos Enteros
Caracteres interpretados como Enteros
3.1 Tipos de Datos
Resumen de Tipos de Datos Reales
3.1 Tipos de Datos
Conjunto de Caracteres ASCII
3.2 Identificadores
Un identificador es un nombre utilizado para referir un
valor constante, una variable, una estructura de datos
compleja, o una funcin dentro de un programa.

Todo identificador est formado por una secuencia de
letras, nmeros y caracteres de subrayado, con la
restriccin que siempre debe comenzar por una letra o
un subrayado y que no puede contener espacios en
blanco.

Cada compilador fija un mximo para la longitud de los
identificadores, siendo habitual un mximo de 32
caracteres.
3.2 Identificadores

C diferencia entre maysculas y minsculas, por lo tanto
los identificadores total, Total y TOTAL, son
considerados como diferentes.

Nunca pueden utilizarse las palabras reservadas del
lenguaje para la construccin de identificadores, que de
acuerdo con el estndar ANSI, son las siguientes:
3.2 Identificadores

Ejemplos de identificadores:


VLIDOS NO VLIDOS
contador12 12contador
valor_total valor total
num1234 1234
dinero dinero$$
feliz feliz!
num_mayor_que num mayor que
3.3 Variables y Constantes
Los programas de computador utilizan diferentes tipos
de datos, por lo que requieren de algn mecanismo para
almacenar el conjunto de valores usado.

El Lenguaje C ofrece dos posibilidades: variables y
constantes.

Una variable es un objeto donde se guarda un valor, el
cual puede ser consultado y modificado durante la
ejecucin del programa.

Una constante tiene un valor fijo que no puede ser
modificado.
3.3 Variables y Constantes
VARIABLES

Toda variable debe declararse antes de ser usada por
primera vez en el programa.

Las sentencias de declaracin de variables indican al
compilador que debe reservar cierto espacio en la
memoria del ordenador con el fin de almacenar un dato
de tipo elemental o estructurado.

Ejemplo:

int a, b, c;
Reservar espacio en la
memoria para tres
variables de tipo entero.
3.3 Variables y Constantes
VARIABLES

Sintaxis de una sentencia de declaracin para una sola
variable:


Tipo_Datos Nombre_Variable;
Tipo_Datos Nombre_Variable1, Nombre_Variable2, ... Nombre_VariableN;
Tipo_Datos Nombre_Variable = Valor_Inicial;
Sintaxis de una sentencia de declaracin para varias
variables del mismo tipo:
Sintaxis de asignacin de un valor inicial a las variables
en la propia declaracin:
3.3 Variables y Constantes
CONSTANTES

C admite dos tipos diferentes de constantes:
Literales
Simblicas.

Constantes Literales: Todo valor que aparece
directamente en el cdigo fuente cada vez que es
necesario para una operacin constituye una constante
literal.

Ejemplo: Los valores 10 y 2 de las siguientes sentencias
son constantes literales del tipo de datos entero:

int cont = 10;
cont = cont + 2;
3.3 Variables y Constantes
CONSTANTES

Constantes Simblicas: Es una constante representada
mediante un nombre (smbolo) en el programa.

Al igual que las constantes literales, no pueden cambiar
su valor. Sin embargo para usar el valor constante, se
utiliza su nombre simblico, de la misma forma que lo
haramos con una variable.

Una constante simblica se declara una sola vez,
indicando el nombre y el valor que representa.

Ejemplo: Para definir una constante simblica.

#define pi 3.14159
3.3 Variables y Constantes
CONSTANTES

Ejemplo: Para utilizar una constante simblica.

radio = 10;
perimetro = 2 * pi * radio;

Ventajas de utilizar constantes simblicas:

Escribir cdigo ms claro (entendible).
Poder sustituir el valor de la constante una sola vez. Con
esto se ahorra el tener que cambiar el valor en todas las
partes del cdigo donde se utilice.

Sintaxis para definir una variable constante:

#define Nombre_Constante Valor_Constante
3.4 Entrada y Salida de Valores
PRINTF

C utiliza operaciones de entrada y salida con formato.

La funcin printf usa como carcter especial de formato
el smbolo de porcentaje (%).

El carcter que sigue a este smbolo define el formato de
un valor (constante, variable o expresin). Por ejemplo,
%c para valores de tipo carcter o %d para valores de
tipo entero.

El siguiente ejemplo muestra por pantalla el contenido
de una variable de tipo carcter y una variable entera.
3.4 Entrada y Salida de Valores
3.4 Entrada y Salida de Valores
SCANF

scanf es una funcin para la entrada de valores a una
estructura de datos, y en particular a una variable. Su
formato es similar al de printf.

scanf(%c %d, &letra, &numero);

Permite introducir desde el teclado un carcter en la
variable letra y seguidamente un valor entero en la
variable numero.

En el caso de scanf se antepone el smbolo ampersand
(&) a las variables. Este smbolo le indica a scanf la
posicin en memoria en la cual est almacenada la
variable.
3.4 Entrada y Salida de Valores
3.5 Expresiones
Una expresin es una frmula matemtica cuya
evaluacin especifica un valor. Los elementos que
constituyen una expresin son: constantes, variables y
operadores.

OPERADOR DE ASIGNACIN

El operador de asignacin permite asignar valores a las
variables. Su smbolo es un signo igual (=). Este
operador asigna a la variable que est a la izquierda del
operador el valor que est a la derecha.

Ejemplo:
x = 10;
num = 9.35;
3.5 Expresiones

OPERADORES ARITMTICOS

Tipo Operador Smbolo
Binarios
Suma +
Resta -
Multiplicacin *
Divisin /
Mdulo %
Unarios
Signo Negativo -
Incremento ++
Decremento --
3.5 Expresiones
OPERADORES ARITMTICOS

El operador mdulo (%) permite obtener el residuo de
una divisin entera.
20 3
2 6

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
detrs de la variable.

x++; ++x; x--; --x;
Mdulo

OPERADORES ARITMTICOS

Si los operadores incrementales preceden a la variable,
sta es incrementada o decrementada antes que el valor
de dicha variable sea utilizado en la expresin en la que
aparece.

Si es la variable la que precede al operador, la variable
es incrementada o decrementada despus de ser
utilizada en la expresin.

3.5 Expresiones

OPERADORES ARITMTICOS

Existe adems una manera abreviada de expresar ciertos
clculos en C. Es muy comn tener expresiones del
estilo de i = i + 10; o x = x * (y + 4);. Este tipo de
expresiones puede escribirse en C de forma compacta
como:



i = i + 10; i + = 10;

x = x * (y + 4); x * = y + 4;
3.5 Expresiones
Expresin1 Operador = Expresin2
3.5 Expresiones
OPERADORES RELACIONALES

Los operadores relacionales se utilizan principalmente
para elaborar condiciones en las sentencias
condicionales e iterativas.

Al relacionar (comparar) dos expresiones mediante uno
de estos operadores se obtiene un resultado lgico, es
decir: CIERTO o FALSO.

El lenguaje C representa un resultado FALSO como el
valor numrico entero cero (0), y un resultado CIERTO
como cualquier valor entero diferente de cero.
3.5 Expresiones

OPERADORES RELACIONALES

Operador Smbolo
Menor que
<
Mayor que
>
Menor o igual que
<=
Mayor o igual que
>=
Igual que
==
Diferente que
!=
3.5 Expresiones


OPERADORES LGICOS

Los operadores lgicos se utilizan principalmente en
conjunto con los relacionales para elaborar condiciones
complejas en las sentencias condicionales e iterativas.

Operador Smbolo
Conjuncin (Y lgico)
&&
Disyuncin (O lgico)
||
Negacin (No lgico)
!
3.5 Expresiones


TABLA DE VERDAD DE LOS OPERADORES LGICOS


A B !A A && B A || B
Cierto
Cierto Falso Cierto Cierto
Cierto
Falso Falso Falso Cierto
Falso
Cierto Cierto Falso Cierto
Falso
Falso Cierto Falso Falso
3.5 Expresiones
PRIORIDAD DE LOS OPERADORES

Operacin(es) Operador(es) Prioridad
Parntesis
( )
Se calculan primero. Si los
parntesis estn anidados, la
expresin en el par ms interno
se evala primero. Si existen
varios pares en el mismo nivel,
se calcularn de izquierda a
derecha.
Multiplicacin,
Divisin y
Mdulo.
*, /, %
Se evalan en segundo lugar. Si
existen varias, se calculan de
izquierda a derecha.
Suma y Resta.
+, -
Se calculan de ltimo. Si existen
varios, sern evaluados de
izquierda a derecha.
3.5 Expresiones
PRIORIDAD Y ASOCIATIVIDAD DE LOS OPERADORES

Los operadores se muestran de arriba hacia abajo en
orden de prioridad.



Operadores Asociatividad
( )
De izquierda a derecha
* / %
De izquierda a derecha
+ -
De izquierda a derecha
< <= > >=
De izquierda a derecha
== !=
De izquierda a derecha
&&
De izquierda a derecha
||
De izquierda a derecha
= += -= *= /= %=
De derecha a izquierda
3.5 Expresiones
3.5 Expresiones
Ejercicios
1. Qu es lo que se imprime en cada una de las
siguientes sentencias en lenguaje C? Suponga que a=3
y b=5.
a) printf(a = %d, a);
b) printf(%d, a + a);
c) printf(b = %d, a + b);
d) printf(a + b = %d, a + b);
e) printf(%d = %d, a + b, b + a);

2. Evaluar las siguientes expresiones:
a) 5 / 2 + 20 % 6
b) 10 * 5 / 2 / (6 4)
c) 8 + 2 * 6 / 2 1
d) 8 == 16 || 5 != 7 && 6 < 2
e) (3 * 3 < 10 || 3 >= 5 2) && 4 + 1 < 12
Ejercicios
3. Escribir un programa que pida la base y altura de un
rectngulo para calcular su rea y permetro. Mostrar
los resultados por pantalla.

4. Escribir un programa que pida una cantidad en
segundos y muestre por pantalla a cuntos minutos y
horas equivale.

5. Escribir un programa que sirva para calcular la
expresin y = ax
3
+ 10/x 1

6. Escribir un programa para calcular el sueldo de un
empleado. El sueldo se calcula multiplicando el total de
horas trabajadas por el valor de la hora y, a esto se le
suma el porcentaje de comisin aplicado al monto total
vendido por el empleado.
UNIDAD
ESTRUCTURAS CONDICIONALES
4.1 La Estructura if
Funcionamiento: Se evala la condicin y si la expresin
se ha evaluado como cierta, se ejecuta la sentencia o
grupo de sentencias. En caso contrario la ejecucin del
programa contina por la siguiente sentencia en orden
secuencial.

if (condicin)
sentencia;
if (condicin)
{
sentencia1;
sentencia2;
. . .
sentenciaN;
}
4.1 La Estructura if
4.1 La Estructura if
Variante if-else: Es otra forma ms general denominada
alternativa doble, que ofrece dos alternativas de
ejecucin, en funcin de si la condicin se evala cierta
o falsa.

if (condicin)
sentencia1;
else
sentencia2;
if (condicin)
{
grupo_de_sentencias1;
}
else
{
grupo_de_sentencias2;
}
4.1 La Estructura if
4.1 La Estructura if
REGLA: Como la estructura else es opcional, se pueden
presentar problemas de ambigedad. Para solventar el
problema se ha establecido una regla muy sencilla que
todo compilador de C tiene en cuenta. La regla consiste
en que una sentencia else se asocia con el if precedente
ms cercano siempre y cuando ste no tenga ya
asociada otra sentencia else.
4.1 La Estructura if
Variante if-else-if: Las condiciones se plantean de forma
anidadas.

if (condicin1)
{
grupo_de_sentencias1;
}
else if (condicin2)
{
grupo_de_sentencias2;
}
else if (condicinN)
{
grupo_de_sentenciasN;
}
else
{
grupo_de_sentencias_por_defecto;
}
4.1 La Estructura if
4.2 El Operador Condicional ?
La forma general de las expresiones construidas con
este operador es la siguiente:



Si la primera expresin se evala cierta, toda la
expresin toma el valor de la segunda expresin. En
cambio, si la primera expresin se evala falsa, toda la
expresin toma el valor de la tercera expresin.

Ejemplo: Valor mayor entre las variables a y b.

c = (a > b) ? a : b; if (a > b)
c = a;
else
c = b;
Expresin1 ? Expresin2 : Expresin3;
4.2 El Operador Condicional ?
Las sentencias if-else sencillas pueden escribirse de
manera muy compacta mediante el operador ?

Finalmente, el operador condicional, por ser en realidad
un operador para expresiones, puede usarse en lugares
donde no puede usarse un if-else, como se muestra a
continuacin:

printf(El mayor es: %d, (a > b) ? a : b);
4.2 El Operador Condicional ?
4.3 La Estructura switch
Esta estructura permite especificar mltiples sentencias
al estilo if-else-if, pero de manera ms compacta,
legible y elegante. Su forma general es la siguiente:
switch(expresin)
{
case constante1:
grupo_sentencias1;
break;
case constante2:
grupo_sentencias2;
break;
. . .
case constanteN:
grupo_sentenciasN;
break;
default:
grupo_sentencias_defecto;
break;
}
4.3 La Estructura switch
La expresin debe ser de tipo entero o carcter, al igual
que todas las constantes asociadas a cada etiqueta case.
Es importante resaltar que no pueden usarse variables o
expresiones en los distintos case, sino slo constantes.

Funcionamiento: En primer lugar se evala la expresin.
Seguidamente su valor es comparado secuencialmente
con el de las diferentes constantes en los case. Si el
valor de la expresin coincide con alguna de ellas, se
ejecuta el grupo de sentencias correspondiente y switch
concluye gracias a la sentencia break. En caso contrario,
y si existe el caso default (que es opcional), se ejecutara
el grupo de sentencias por defecto.
4.3 La Estructura switch
4.3 La Estructura switch
La estructura switch tambin podra escribirse de forma
equivalente mediante sentencias del tipo if-else-if, de la
siguiente forma:
if (expresin == constante1)
{
grupo_de_sentencias1;
}
else if (expresin == constante2)
{
grupo_de_sentencias2;
}
else if (expresin == constanteN)
{
grupo_de_sentenciasN;
}
else
{
grupo_de_sentencias_por_defecto;
}
4.3 La Estructura switch
4.3 La Estructura switch
Ejercicios
1. Escribir un programa que lea un valor entero y
determine si es mltiplo de 3 y de 5.

2. Un vendedor ofrece su producto de la siguiente
manera: Si le compran 10 productos o menos, el precio
por producto es de $2.000. Si le compran entre 11 y
20 artculos, el precio es de $1.500 por artculo. Si le
compran ms de 20 artculos, el precio es de $1.000
por cada uno. Escriba un programa que con slo
proporcionarle la cantidad de artculos d como
resultado el precio y el total.

3. Se ingresan cinco (5) nmeros enteros, escribir un
programa que muestre cuntos son pares y cuntos
impares.
Ejercicios
4. En un grupo se requiere clasificar a los alumnos de la
siguiente manera: si tienen calificacin de 10 deber
estar clasificado como excelente; si tiene 9, muy
bueno; 8 bueno; si tiene 7 regular, si tiene 6 malo y si
tiene menos reprobado. Escribir un programa que con
slo proporcionarle la calificacin de cmo resultado
un mensaje en pantalla que indique su nivel.

5. A un trabajador le pagan segn sus horas y una tarifa
de pago por horas. Si la cantidad de horas trabajadas
es mayor a 44 horas, la tarifa se incrementa en un 50%
para las horas extras. Hacer un programa que calcule
el salario del trabajador dadas las horas trabajadas y la
tarifa.

6. Escribir un programa para saber si dado dos nmeros,
uno es divisor de otro.

S-ar putea să vă placă și