Domingo 22 de Diciembre de 2024, 04:25
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
Pascal
»
problema aprendizaje
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: problema aprendizaje (Leído 3897 veces)
kosbalt
Nuevo Miembro
Mensajes: 5
problema aprendizaje
«
en:
Lunes 4 de Julio de 2011, 22:58 »
0
hola buenas estoy empezando es esto de la programacion y despes de leerme un libro me fui a los ejercicios, el primero dice, hacer un programa que pida dos numeros y aga la media de estos
mi problema es el siguiente, he conseguido que me funcione, pero al ejecutarle coon por ejemplo 18 y 2 me sale que el resultado es 1,00000000E*1 -->10, pero no se que hacer para que me salga directamente 10 y no lo otro, me pueden hechar una mano, por otro lado no se como poner un contador, que cada vez que ponga el comando al ejecutarse cada vez que llege a ese punto me sume 1, he probado asi:
Citar
program contador
begin
n:= 0;
writeln('indique valor');
n:= n+1;
write('n ', n)
end.
pero al compilarlo me da error en al linea 2, en la de n:= 0 no se que probar, pero no soy capaz, si me pueden hechar una mano grax
Tweet
fonsi3
Miembro activo
Mensajes: 95
Re: problema aprendizaje
«
Respuesta #1 en:
Martes 5 de Julio de 2011, 04:04 »
0
Donde esta la seccion var?? Alli declaras las variables que usaras en tu programa.
Ademas si deseas hacer un algoritmo que sume valores ingresados por teclado debes poner todo eso dentro un while loop, que evalue una condicion que sea el corte del programa, generlamente es algo asi:
"Hacer un programa que sume valores ingresados por teclado, siendo el valor 9999 la orden de cortar el programa", tonces eso ya te dice que el programa va a funcionar hasta que el usuario ingrese como valor 9999, inmediatemente asocias esto con un while loop.
El programa seria algo como esto;
Código: Pascal
program
CalcularPromedioDeValoresIngresadosPorTeclado
// la variables que usare en mi programa
var
valor_ingresado
:
integer
;
cantidad_valores_ingresados
:
integer
;
sumandos
:
integer
;
promedio
:
integer
;
begin
// inicializo sumandos donde ire sumando los valores ingresados por usuario
// si no hago cuanto sume esta variable mas el valor ingresado por el usuario
// me ocasinaria un error, ya que de todas formas al ser ambas variables del mismo
// tipo, sumandos esta indefinida, por se inicializa en 0
sumandos
:=
0
// aca almacenera la cantidad de valores que usuario va ingresando...
cantidad_valores_ingresados
:=
0
;
// se ingresa el primer valor
read
(
valor_ingresado
)
;
// hasta que no se ingrese como valor "9999" el programa ejecuta
// lo que esta dentro de este while loop
while
(
valor_ingresado <>
9999
)
do
begin
// voy sumando valor_ingresado con el anterior
sumandos
:=
sumandos
+
valor_ingresado;
// es mas que obvio lo que hago aqui
cantidad_valores_ingresados
:=
cantidad_valores_ingresados
+
1
;
// vuelta al ciclo
read
(
valor_ingresado
)
end
;
// se ha terminado de ingresado valores
// calculo el promedio
// aqui el truco esta en usar la instruccion DIV, la cual me
// tira la parte entera de una division
promedio
:=
sumandos
DIV
cantidad_valores_ingresados
// finalizo
writeln
(
'El promedio de los valores ingresados es: '
,
promedio
)
;
readln
(
)
;
readln
(
)
;
end
.
Cha che chi cho chu buenichimo!
http://mensoscripts.com
Links de interes:
HTML
|
CCS2
~
CSS*
|
PHP
Indispensables tools]Firebug[/url] |
Web Developer
|
FireFTP
|
Live Headers
kosbalt
Nuevo Miembro
Mensajes: 5
Re: problema aprendizaje
«
Respuesta #2 en:
Martes 5 de Julio de 2011, 10:52 »
0
hola, muchas gracias, intente modificar el que tenai hecho, y me sige dando error al compilarlo, no se porque, dice que en la linea 20
este es el codigo:
Código: Pascal
program
valormediodosnumeros;
var
a
:
integer
;
b
:
integer
;
n
:
integer
;
//suma
i
:
integer
;
// numero de ingresados
media
:
integer
;
begin
n
:=
0
;
i
:=
0
;
writeln
(
'introducir primer numero'
)
;
readln
(
a
)
;
n
:=
n
+
a;
i
:=
i
+
1
;
writeln
(
'Introducir segundo numero'
)
;
readln
(
b
)
;
n
:=
n
+
b;
i
:=
i
+
1
;
end
;
media
:=
n
DIV
i;
write
(
'la media es '
,
media
)
;
end
.
fonsi3
Miembro activo
Mensajes: 95
Re: problema aprendizaje
«
Respuesta #3 en:
Martes 5 de Julio de 2011, 17:11 »
0
Tienes un end; que no deberia ir alli:
Código: Pascal
i
:=
i
+
1
;
end
;
media
:=
n
DIV
i;
Cha che chi cho chu buenichimo!
http://mensoscripts.com
Links de interes:
HTML
|
CCS2
~
CSS*
|
PHP
Indispensables tools]Firebug[/url] |
Web Developer
|
FireFTP
|
Live Headers
kosbalt
Nuevo Miembro
Mensajes: 5
Re: problema aprendizaje
«
Respuesta #4 en:
Miércoles 6 de Julio de 2011, 16:29 »
0
hola buenas, me sigue dando error n la linea 23, la ultima
Código: Pascal
program
valormediodosnumeros;
var
a
:
integer
;
b
:
integer
;
n
:
integer
;
//suma
i
:
integer
;
// ingresados
media
:
integer
;
begin
n
:=
0
;
i
:=
0
;
writeln
(
'introducir primer numero'
)
;
readln
(
a
)
;
n
:=
n
+
a;
i
:=
i
+
1
;
writeln
(
'Introducir segundo numero'
)
;
readln
(
b
)
;
n
:=
n
+
b;
i
:=
i
+
1
;
media
:=
n
DIV
i;
write
(
'la media es '
,
media
)
;
end
.
fonsi3
Miembro activo
Mensajes: 95
Re: problema aprendizaje
«
Respuesta #5 en:
Miércoles 6 de Julio de 2011, 19:10 »
0
Debe ser que la penultima linea:
Código: Pascal
write
(
'la media es '
,
media
)
lleva ";", cosa que no se deberia ir.
¿Que compilador estas usando? Ya que algunos compiladores son menos estrictos que otros con el tema de la "inmunda" sintaxis que Pascal utiliza. Te recomiendo Free Pascal. De todas formas, Pascal tiene ciertas conveciones que solo caben en la cabeza de un desquiciado mental, una es justamente que la ultima linea que precede a un end, no se debe llegar ";". Pero como repito, algunos compiladores le da lo mismo esto, asi que de todas formas es importante tener en cuenta estas cosas.
Cha che chi cho chu buenichimo!
http://mensoscripts.com
Links de interes:
HTML
|
CCS2
~
CSS*
|
PHP
Indispensables tools]Firebug[/url] |
Web Developer
|
FireFTP
|
Live Headers
kosbalt
Nuevo Miembro
Mensajes: 5
Re: problema aprendizaje
«
Respuesta #6 en:
Miércoles 6 de Julio de 2011, 20:31 »
0
como compilador utilizo el Free Pascal IDE
me sige dando error en lalinea 23
Código: Pascal
program
valormediodosnumeros;
var
a
:
integer
;
b
:
integer
;
n
:
integer
;
//suma
i
:
integer
;
// ingresados
media
:
integer
;
begin
n
:=
0
;
i
:=
0
;
writeln
(
'introducir primer numero'
)
;
readln
(
a
)
;
n
:=
n
+
a;
i
:=
i
+
1
;
writeln
(
'Introducir segundo numero'
)
;
readln
(
b
)
;
n
:=
n
+
b;
i
:=
i
+
1
;
media
:=
n
DIV
i;
write
(
'la media es '
,
media
)
end
.
kosbalt
Nuevo Miembro
Mensajes: 5
Re: problema aprendizaje
«
Respuesta #7 en:
Miércoles 6 de Julio de 2011, 21:03 »
0
he probado con otro compilador Dev-Pascal y con este no me dio problemas, muchas gracias por tu ayuda
sergio__
Nuevo Miembro
Mensajes: 12
Re: problema aprendizaje
«
Respuesta #8 en:
Viernes 8 de Julio de 2011, 01:39 »
0
te falta un ";" en la linea 23, ojo con eso que a veces es molesto cuando empezas y te tilda mas de un horajaja
un consejo, si la variable representa la suma, ponele de nombre "suma", sino suponete que tenes un codigo mas largo, tenes que ir a la seccion VAR donde pusiste el comentario para saber que "n" representa la suma
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
Pascal
»
problema aprendizaje