Download Principios de Computadoras I - Universidad Nacional del Sur

Document related concepts

Triángulo de Pascal wikipedia , lookup

Transcript
Universidad Nacional del Sur
Principios de Computadoras I
2° Cuatrimestre 2009
Principios de Computadoras I
Trabajo Práctico N° 1
1) Dado un valor A de tipo entero ingresado por el usuario indicar:
i)
Su cuadrado.
ii) Su valor absoluto.
iii) Su raíz cuadrada.
iv)
v)
vi)
Si es par o impar. Desarrollar más de un método.
La cantidad de dígitos que posee (sin usar ciclos).
Si es negativo, positivo o cero.
2) Escribir un programa en Pascal que sume, reste, multiplique y divida dos números reales.
3) Escribir un programa en Pascal que calcule el perímetro y el área de un rectángulo.
4) Escribir un programa en Pascal que calcule el perímetro y el área de un círculo.
5) Escribir un programa en Pascal que calcule la superficie y el volumen de un cilindro.
6) Escribir un programa en Pascal que calcule el volumen de una esfera.
7) Desarrollar un programa que descomponga un número entero de 4 dígitos en Unidad, Decena, Centena
y Unidad de Mil.
8) Dados dos números A y B indicar la diferencia entre el mayor y el menor. No está permitido usar la
función Abs().
9) Dadas las longitudes de tres segmentos determinar si éstos pueden formar un triángulo. Colocar en una
variable llamada Triang un 0 si no pueden formarlo, un 1 si forman un triángulo equilátero, un 2 si
forman un triángulo isósceles y un 3 si forman un triángulo escaleno.
10) Hacer un programa que permita redondear un número real a dos cifras decimales. Ej: 23.4567 à 23.46
11) Hacer un programa que determine si un número entero de 5 dígitos es capicúa.
12) Escribir un programa en Pascal que calcule el número de horas, minutos y segundos que hay en X
segundos.
13) Escribir un programa en Pascal que, dadas las longitudes de la hipotenusa y la de uno de los catetos de
un triángulo rectángulo, calcule la longitud del otro cateto.
14) Realizar un programa que muestre en pantalla los primeros 10 múltiplos de un número entero I.
15) Realizar un programa que muestre en pantalla todos los divisores de un número entero I.
16) Realizar un programa que determine si un número entero I es primo.
17) Dadas las variables A y B de tipo entero ingresadas por el usuario, hacer un programa que liste todos
los números comprendidos entre ambas variables que cumplan con la condición indicada en cada
punto:
i)
ii)
iii)
Números Pares
Números Impares
Múltiplos de un valor K (K ∈ N) ingresado por el usuario.
18) Calcular el factorial de un número natural dado como dato.
Recordar que: n! = n * (n -1) * (n -2) * ... * 2 * 1 * 1
19) Hacer un programa que cuente cuántos números capicúas hay entre 10000 y 99999.
Trabajo Práctico N° 1
web: http://www.lip.uns.edu.ar/pci
-
*: [email protected]
Página 1 de 4
Universidad Nacional del Sur
Principios de Computadoras I
2° Cuatrimestre 2009
20) Mostrar todos los números a, b y c de tipo entero que cumplan con la siguiente regla a2 + b2 = c2
teniendo en cuenta que 1<=a<=1000 y 1<=b<=1000
21) Realizar una tabla de conversión de temperaturas de °C a °F para todos los valores enteros que se
encuentren entre dos valores A y B de tipo real ingresados por el usuario.
°C =
5
∗ (° F − 32)
9
22) Realizar un programa que indique cuántos triángulos isósceles, cuántos equiláteros y cuántos escalenos
pueden formarse si se tienen segmentos a, b y c que cumplen con la siguiente condición:
1 <= a <= b <= c <= 20
23) Se dice que un entero positivo es triangular si es igual a una suma de enteros consecutivos que
comienza en 1. Así, son números triangulares los siguientes: 1, 3 (= 1+2), 6 (= 1+2+3), 10(= 1+2+3+4),
15 (= 1+2+3+4+5), etc. Realice un programa en Pascal que indique si un número entero positivo
ingresado por el usuario es triangular.
24) Realizar un programa en el cual un jugador debe acertar un número aleatorio entre 0 y 100 “pensado”
por la computadora. El usuario haría sucesivos intentos para adivinarlo y se le debe indicar si el
número ingresado es mayor o menor que la incógnita. Cuando acierte, se le deberá indicar el número de
intentos que utilizó o para adivinarlo.
25) Se tiene el siguiente arreglo A[]:
A[]
1
2
3
4
5
6
7
8
9
10
11
12
N=13
7
9
1
3
8
2
10
6
4
13
5
-1
0
Completar las siguientes líneas:
A[1]
A[5]
A[N]
A[N+1]
A[N] + 1
A[1] + 3
A[1 + 3]
A[A[9]]
= _________
= _________
= _________
= _________
= _________
= _________
= _________
= _________
Si i=6 y j=1 completar:
A[i]
A[i - j]
A[i + j]
A[i] + j
A[2*i]
2*A[i]
2*A[2*i]
2*A[3*i]
A[j-i]
= ________
= ________
= ________
= ________
= ________
= ________
= ________
= ________
= ________
26) Dado un arreglo A[1..N], desplazar todos los elementos un lugar hacia atrás.
27) Dado un Arreglo A[] de dimensión N=20, cargar el mismo con la secuencia de valores indicada en
cada punto:
a)
b)
c)
d)
e)
f)
g)
1, 2, 3, 4, 5, ....., 20
2, 4, 6, 8, 10, ....., 40
1.01, 2.02, 3.03, 4.04, 5.05, ....., 20.20
1, 4, 9, 16, ...... , 400
20, 19, 18, 17, 16, ....., 1
39, 37, 35, 33, ....., 5, 3, 1
1, 20, 3, 18, 5, 16, 7, 14, ......, 15, 6, 17, 4, 19, 2
Trabajo Práctico N° 1
web: http://www.lip.uns.edu.ar/pci
-
*: [email protected]
Página 2 de 4
Universidad Nacional del Sur
Principios de Computadoras I
2° Cuatrimestre 2009
28)
a) Indicar si los arreglos S[] y T[] mostrados a continuación son iguales:
1
2
3
4
5
S[]
88
44
66
11
99
T[]
1
88
2
44
3
66
4
11
5
99
b) hacer dos programas, uno que sume los elementos de S y otro que sume los elementos de T. Saque
conclusiones.
29)
a) Indicar si las matrices L[] y M[] mostradas a continuación son iguales:
L[]
1
2
3
4
5
1
8
13
21
34
55
2
89
144
233
377
610
M[]
1
2
1
8
89
2
13
144
3
21
233
4
34
377
5
55
610
b) hacer dos programas, uno que sume todos los elementos de L y otro que sume todos los elementos de
M. Saque conclusiones.
30) Indicar qué diferencias de comportamiento presentan los siguientes códigos: (Saque conclusiones.)
c)
a)
suma := 0;
for i:=1 to N do
begin
if A[i] mod 2 = 0 then
suma := suma + A[i];
writeln(suma);
end;
suma := 0;
for i:=1 to N do
begin
if A[i] mod 2 = 0 then
suma := suma + A[i];
end;
writeln(suma);
d)
b)
for i:=1 to N do
begin
suma := 0;
if A[i] mod 2 = 0 then
suma := suma + A[i];
writeln(suma);
end;
for i:=1 to N do
begin
suma := 0;
if A[i] mod 2 = 0 then
suma := suma + A[i];
end;
writeln(suma);
31) Indicar cuál es la salida por pantalla de los siguientes programas. (Saque conclusiones.)
a)
i:=0; j:=0; k:=0;
c) i:=0; j:=0; k:=0;
for i:=1 to 2 do
writeln(i, j, k);
for i:=1 to 2 do
for k:=1 to 3 do
for j:=1 to 4 do
writeln(i, j, k);
for j:=1 to 4 do
writeln(i, j, k);
d) i:=0; j:=0; k:=0;
for i:=1 to 2 do
begin
for j:=1 to 4 do
writeln(i, j, k);
for k:=1 to 3 do
writeln(i, j, k);
b) i:=0; j:=0; k:=0;
for i:=1 to 2 do
for j:=1 to 4 do
for k:=1 to 3 do
writeln(i, j, k);
Trabajo Práctico N° 1
web: http://www.lip.uns.edu.ar/pci
for k:=1 to 3 do
writeln(i, j, k);
end;
-
*: [email protected]
Página 3 de 4
Universidad Nacional del Sur
Principios de Computadoras I
2° Cuatrimestre 2009
32) La Ley de Ohm, establece que la intensidad de la corriente eléctrica que circula por
un dispositivo lineal es directamente proporcional a la diferencia de potencial aplicada
e inversamente proporcional a la resistencia del mismo, según expresa la fórmula
siguiente:
En donde,
I = Intensidad en amperios (A) (corriente)
V = Diferencia de potencial en voltios (V) (voltaje)
R = Resistencia en ohmios (O).
Dado un valor de voltaje especificado por el usuario y considerando que la resistencia puede tomar valores
entre 100Ω y 1500Ω con intervalos de 100Ω, realice un programa en Pascal que muestre en pantalla una
tabla donde se indique el valor de la corriente en función de los valores de las resistencias.
33) Implemente un programa en Pascal para calcular las siguientes ecuaciones:
a) 4 ⋅
5000

1

∑ (−1 ) 2n + 1 
n
n =0
5000
b)
1
2
n =1 n
6∑
4n 2
c) 2 ⋅ ∏ 2
n =1 4n − 1
5000
Trabajo Práctico N° 1
web: http://www.lip.uns.edu.ar/pci
-
*: [email protected]
Página 4 de 4