Pascal/Turbo Pascal - Ejercicios

 
Vista:
sin imagen de perfil

Ejercicios

Publicado por Dagoberto (10 intervenciones) el 28/06/2017 02:15:08
Estimados, alguien me puede ayudar con esos ejercicios?
Se los agradecería de corazón realmente
Espero que alguien pueda, son para mañana y no pude ir a las clases.

Calcular la suma de los divisores de cada número introducido por teclado. Terminaremos cuando el número sea negativo o 0.
Crear un programa para calcular la operación Xn . (eso es elevado amigos)
Diseñar un algoritmo que lea y escriba una serie de números distintos de cero. El algoritmo debe terminar con un valor cero que no se debe imprimir. Visualizar el número de valores leídos.
En un juego de preguntas a las que se responde “Si” o “No” gana quien responda correctamente las tres preguntas. Si se responde mal a cualquiera de ellas ya no se pregunta la siguiente y termina el juego. Las preguntas son: (o invente tres preguntas ud.)
1. Colon descubrió América?
2. La independencia de México fue en el año 1810?
3. The Doors fue un grupo de rock Americano?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 287
Oro
Ha mantenido su posición en Pascal/Turbo Pascal (en relación al último mes)
Gráfica de Pascal/Turbo Pascal

Ejercicios

Publicado por dario (31 intervenciones) el 28/06/2017 17:00:04
Espero te sirva.
Saludos.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
uses crt;
{--------------------------------------------}
procedure sumaDivisores;
var
	num,i,s:integer;
begin
	clrscr;
	write('Ingrese un numero [cero(0) o negativo para terminar]: ');
	readln(num);
 
	while num > 0 do begin
		s:=0;
		for i:=1 to num do begin
			if num mod i = 0 then
				s:=s+i;
		end;
		writeln('Suma = ',s);
		write('Ingrese un numero [cero(0) o negativo para terminar]: ');
		readln(num);
	end;
end;
{-----------------------------------------------}
procedure potencia;
var
	base,exponente,p,i:integer;
begin
	write('Ingrese la base: ');
	readln(base);
	write('Ingrese el exponente: ');
	readln(exponente);
	p:=1;
 
	for i:=1 to exponente do
		p:=p*base;
	writeln(base,'^',exponente,' es ',p);
end;
{------------------------------------------------------}
procedure valoresLeidos;
var
	n,i,c:integer;
begin
	write('Dame un numero: ');
	readln(n);
	while n <> 0 do begin
		inc(c);
		write('Dame un numero: ');
		readln(n);
	end;
	writeln('Se leyeron ',c,' numeros');
end;
{---------------------------------------------------------}
procedure juego;
var
	r1,r2,r3:char;
	flag:byte;
begin
	flag:=1;
	while flag=1 do begin
		write('Colon descubrio America? s/n: ');
		readln(r1);
		write('La independencia de Mexico fue en 1810? s/n: ');
		readln(r2);
		write('Green Day es un grupo Punk? s/n: ');
		readln(r3);
		if (r1='s')and(r2='s')and(r3='s') then begin
			writeln('Usted gano, continue jugando');
			continue;
		end
		else begin
			writeln('Usted perdio, gracias por jugar');
			flag:=0;
		end;
	end;
end;
{---------------------------------------------------------}
 
begin
	clrscr;
	sumaDivisores;
	writeln;
	potencia;
	writeln;
	valoresLeidos;
	writeln;
	juego;
end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Ejercicios

Publicado por David (224 intervenciones) el 28/06/2017 19:45:10
En el apartado del cálculo de los divisores, te puedes ahorrar alguna comparación, sabiendo que ningún número es divisible por un número mayor que su mitad, salvo por él mismo.

for i:=1 to num div 2 do

luego bastaría con añadir el propio número, en este caso a la suma, y listo.

Una vez acabado el bucle for pondrías

s:=s+num;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Ejercicios

Publicado por Dagoberto (10 intervenciones) el 29/06/2017 00:47:19
Muchas Gracias dario!!, estoy recién entrando a la programación, me recomiendas algo para meterme más en pascal?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 287
Oro
Ha mantenido su posición en Pascal/Turbo Pascal (en relación al último mes)
Gráfica de Pascal/Turbo Pascal

Ejercicios

Publicado por dario (31 intervenciones) el 29/06/2017 16:10:55
Busca en google a nachocabanes, tiene bastante informacion acerca de pascal y tamb tiene un documento en PDF.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar