Está en la página 1de 16

Entrenamiento Algorítmico con

Pruebas de Escritorio

Práctica de Entrenamiento I

Lee UNA POR UNA y analiza cuidadosamente el contenido de cada una


de las siguientes páginas.
Expresiones y Proposiciones

Expresión Proposición Significado


5 5; Obtener el valor constante 5

‘X’ ‘X’; Obtener el carácter X

X X; Obtener el valor contenido en la variable X

X=5 X = 5; Se deposita (asigna) el valor 5 en el espacio de


almacenamiento de la variable llamada X
X+5 X + 5; Se obtiene la adición del valor contenido en la
variable X y el valor constante 5
Y=X+ 5 Y = X + 5; Se adicionan el valor contenido en X con el 5 y el
resultado se almacena en la variable Y
X == Y X == Y; Obtiene verdadero o falso al evaluar sí el valor
contenido en X es igual al valor contenido en Y.
( X ¡= Y ) ( X ¡= Y ); Obtiene verdadero o falso al evaluar sí el valor
contenido en X es diferente al valor contenido en Y.
( X <= Y ) ( X <= Y ); Obtiene verdadero o falso al evaluar sí el valor
contenido en X es menor o igual al valor contenido en
Y.
Y = (X + 5) / (ALFA – D1) Y = (X + 5) / (ALFA – D1); Deposita en Y el resultado de toda una expresión
aritmética
if(X ==5) Y = X + 5; Una proposición condicional se compone de varias
expresiones.
; La proposición Nula
int x, y, w, z;
x = 5:
y = x;

w = x + 5 * y + 5;

x = y = 5;

z = (x + 5) * (y + 5);

¿El valor almacenado en w es igual al valor de z?


Precedencia de Operadores (orden de ejecución)
Prueba de Escritorio
int x, y, w, z; x y z w
x = 5: 5 5 100 35
y = x; 5 5 Para w:
1) 5 * y = 25
w = x + 5 * y + 5; 2) + x = 30
3) + 5 = 35

Para z:
1) x + 5 = 10
2) x + 5 = 10
x = y = 5;
3) 10 * 10 = 100

z = (x + 5) * (y + 5);
La multiplicación tiene mayor precedencia que la suma.
Los paréntesis permiten alterar el orden de precedencia, primero se ejecutan las operaciones
dentro de los paréntesis
int x, y, w, z;

x = y = w = z = 1;

w = ++x + y;

x = y = w = z = 1;

z = x++ + y ;

¿El valor almacenado en w es igual al valor de z?


Operadores de Preincremento y Postincremento:

int x, y, w, z; Para w: x y z w
Incrementa el valor x y
lo utiliza sumándolo a 1 1 1 1
x = y = w = z = 1; y; el resultado queda 2 3
en w.
1 1 1 1
w = ++x + y;
Para w: 2 2
x = y = w = z = 1; Utiliza el valor x
sumándolo a y dejando
el resultado en z.
z = x++ + y ; Después incrementa x.

¿El valor almacenado en w es igual al valor de z? NO


x y w z RAM
int x, y, w, z; 5 10 10 10
100 100 w y
x = 5: 95
y = x + 5; 100 10

w = z = y; 5 95
x z
z = z * w;
w = w * w;

z = w – (y – x);
¿ Cómo trabaja la función printf ?
#include <stdio.h>
void main () {
int x;
float y;
double z;

x = 5;
y = 10.0;

z = y * x;

printf(“ %d * %f = %f “, x, y, z);
}
Respuesta: como los formatos de los documentos oficiales

Alumno:
A. paterno A. materno Nombre(s)

Macuca Burrón Tacuche

Alumno: Burrón Tacuche Macuca


A. paterno A. materno Nombre(s)
* =
factor factor producto

5, 6, 30

5 * 6 = 30

“ %d * %d = %d ”
5 * 6 = 30
int x, y;
x = 5;
y = x + 1;

printf(“ %d * %d = %d”, x, y, x*y );


int alfa = 92;

printf(“Valor entero: %d \n”, alfa);


printf(“Valor ASCII: %c \n”, alfa);

resultado:

Valor entero: 92
Valor ASCII: \
FORMATOS I/O STANDAR

Conversiones básicas de printf

di -->>> int; numero decimal


o -->>> int; numero octal sin signo (sin cero inicial)
xX -->>> int; numero hexadecimal sin signo (con 0x o 0X inicial)
u -->>> int; numero decimal sin signo
c -->>> int; carater sencillo
s -->>> char *; imprime caracteres de una cadena hasta un '/0' o el numero de caracteres dado por
la precision
f -->>> double; [-]m.dddddd, en donde el numero de ds esta dado por la precision
(predeterminado a 6)
eE -->>> double; [-]m.dddddde+xx
-
gG -->>> doluble; usa %e o %E sie el exponente es menor que -4 o mayor o igual a la precision; de
otra forma usa %f. Los ceros o el punto al final no se imprimen
p -->>> void *; apuntador (representacion dependiente de la instalacion)
% -->>> no es convertido en ningun argumento, imprime un %

También podría gustarte