Análisis y Diseño de Algoritmos
Prof: Ing. Victor Garro
Asistente: Marco Elizondo Vargas
PROGRAMACION
EN C++
Capitulo
6 Operadores Básicos
1)
UTILIZACION DE BUCLE FOR
El bucle for permite que se repitan una o mas
sentencias, el bucle for es el bucle mas flexible permite un gran numero de
variaciones lo examinaremos en su forma mas común, se utiliza para repetir una
sentencia o bloque de sentencias u numero de veces especificado. Esta es la
forma general para la repetición de una sentencia sencilla for(inicialización; comprobación condicional; incremento) sentencia inicialización
se utiliza para dar un valor inicial a la
variable que controla el bucle la comprobación condicional verifica la
variable de control frente a un valor
objetivo cada vez que se repite el bucle y si la comprobación se evalúa como
verdadera el bucle se repite y si es falsa se detiene y la ejecución del
programa se reanuda en la siguiente línea de
código que le sigue al bucle el incremento de for se ejecuta al final de
cada bucle, es decir se ejecuta después de que se haya ejecutado la sentencia o
bloque de sentencias pero antes que la comprobación condicional el propósito es
aumentar o disminuir el valor de control de bucle en una cierta cantidad
Ej: Este programa usa el bucle for para imprimir en la pantalla los números
del 1 al 10
#include <stdio.h> // Librería
main ( )
{
int num; // variable de tipo entero
for (num=1;num<11;num=num+1); // Bucle for vemos que al principio num toma
el valor 1 luego compara que num sea meno que 11 y si esto se cumple a num
se le suma 1 y vuelve al principio del bucle for hasta que num sea igual
a 11
printf ("%d ", num);
printf ("Terminado);
}
2) SUSTITUCION
DE OPERADORES DE INCREMENTO Y DECREMENTO DE C++
C++ nos proporciona un operador especial para incrementar una variable en
uno, imaginaos que le tenemos que sumar uno a una variable cualquiera
haríamos lo siguiente (variable=variable+1) pues bien con los operadores
especial lo podríamos resumir en (variable++) y para restar seria
exactamente igual pero con el operador -- (variable=variable-1) se podría
cambiar por (variable--) tanto los operadores ++ como -- se pueden utilizar
como parte de cualquier expresión valida de C++ veamos un ej este programa
imprime 11 11 en la pantalla:
#include
<stdio.h>
main ( )
{
int i, j; // Se pueden declarar varias variables juntas del mismo tipo pero
separadas siempre mediante comas
i=10;
j=++i; // Es lo mismo que poner j=i+1
printf ("i y j: %d%d", i, j);
}
3) EXTENSION DE
LAS CAPACIDADES DE PRINTF( )
Hasta el ahora
hemos utilizado printf( ) para mostrar líneas de texto y
números pero veamos que mas podemos hacer con printf( ) pero como podemos
decirle a printf( ) que la salida avance a la línea siguiente ej:
esto es una prueba
de una salida sin avance
Esto seria lo que veríamos si hiciéramos un programa que imprimiese esto en
pantalla
ej:
esto es una prueba
de una salida con avance
Esto seria lo que veríamos si hiciéramos un programa que imprimiese esto en
pantalla
La forma de lograr esto y otras acciones es utilizando las constantes del
carácter barra invertido \ de C++ el lenguaje C tiene 13 códigos especiales
que se usan para mostrar caracteres que no pueden ser introducidos desde el
teclado el código mas importante de \ quizás sea \n conocido como carácter
de nueva línea si volvemos al ejemplo anterior vemos que el espacio entre
línea y línea que existe le hemos conseguido con \n veamos un ej:
#include
<stdio.h>
{
printf ("Esto es una prueba\n"); // Con \n conseguimos una línea en
blanco
entre las dos frases
printf ("de una salida con avance");
}
esto nos daría lo siguiente
esto es una prueba
de una salida con avance
Veamos ahora los 13 caracteres especiales (secuencias de escape) que existen
código significado
\b
--> retroceso
\f --> avance de pagina
\n --> nueva línea
\r --> retorno de carro
\t --> tabulador horizontal
\" --> comillas dobles
\' --> comilla simple
\0 --> nulo
\\ --> barra invertida
\v --> tabulador vertical
\a --> pitido
\N --> constante octal (donde N es dicha constante)
\xN --> constante hexadecimal (donde N es dicha constante)
4) PROGRAMACION
CON OPERADORES LOGICOS Y RELACIONALES DE C++
En este apartado trataremos los operadores lógicos y
relacionales de C++, los operadores lógicos se agrupan en resultados de
verdadero o falso se usan para soportar las operaciones lógicas básicas de Y, O
y NO veamos ahora la tabla de la verdad en esta tabla usaremos 1 para verdadero
y 0 para falso
P |
Q |
P&&Q |
I||Q |
¡P |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
Estos
operadores tienen un prioridad mas baja que los operadores aritméticos esto
quiere decir que una operación como 10+count>a+12 se evalúa como si se
hubiera escrito (10+count)>(a+12) se puede agrupar cualquier numero de
operaciones relacionales utilizando operadores lógicos ej: esta operación
enlaza 3 operaciones relacionales
var>max
| | ! (max==100) && 0<elemento
La
siguiente tabla muestra la prioridad relativa de los operadores relacionales y
lógicos
OPERADORES RELACIONALES |
|
OPERADOR |
SIGNIFICADO |
> |
Mayor que |
>= |
Mayor o igual que |
< |
Menor que |
<= |
Menor o igual que |
== |
Igual que |
¡= |
Distinto de |
OPERADORES LOGICOS |
|
Operador |
Significado |
&& |
Y |
!! |
O |
! |
NO |
Prioridad
alta ! > >= < <= == != &&
Prioridad
baja ||
El resultado de los operadores lógicos y
relacionales es 0 y 1 C++ define como valor verdadero cualquiera distinto de 0
y los relacionales y lógicos dan como valor verdadero 1 se pueden usar los
operadores relacionales y lógicos en sentencias if como en for, en el siguiente
ejemplo podemos ver como la siguiente sentencia informa que tanto a como b son
positivos:
if
(a>0 && b>0 printf ("ambos son positivos2);