Ayuda con algoritmos de uso de variables

Iniciado por douglascarvallo, 23 Junio 2013, 23:42 PM

0 Miembros y 1 Visitante están viendo este tema.

douglascarvallo

Hola amigos, me mandaron a hacer unos algoritmos y pues ya los he hecho. Pero no si si están buenos, o donde habrían posibles errores. Ayúdenme con eso por favor, y gracias de antemano.


Citar1.   Cree algoritmo de un programa que solicite base y la altura de un triángulo y calcule su área. Si la base o la altura son negativ volver a pedirlos hasta que ambos sean +.

Algoritmo


1.   Inicio
2.   MIENTRAS (base >  0) HACER
Leer base
Fin mientras
3.   MIENTRAS  (altura > 0) HACER
Leer altura
Fin mientras
4.   area=(base*altura)/2
5.   MOSTRAR "area"
6.   Fin

Citar2.Cree algoritmo de un programa q solicite al usuario su edad y muestre si es mayor de edad o menor de edad, o de la tercera edad . Si la edad introducida es negativa volver a pdir hasta que sea +.

Algoritmo


1.   Inicio
2.   MIENTRAS (edad>0) Hacer
Leer edad
Fin mientras
3.   SI (edad<18) ENTONCES
Mostrar ("Eres menor de edad")
EN CASO CONTRARIO
SI (edad>=18 && edad<61) ENTONCES
Mostrar ("Eres mayor de edad")
EN CASO CONTRARIO
SI (edad>60) ENTONCES
Mostrar ("Eres de la tercera edad")
4.   FIN

Citar6.   Cree algoritmo de un programa que pida el radio de una esfera y calcule su área. Si el radio introducido es negativo volver a pedirlo hasta que dicho radio sea positivo.

Algoritmo


1.   Inicio
2.   MIENTRAS (radio<= 0) ENTONCES
Leer radio
Fin mientras
3.   area=4*3.14*(radio*radio)
4.   Mostrar "área"
5.   Fin


Mitgus

#1
Hola, tus algoritmos están bien, pero se podría hacer algunos ajustes  ;)

En vez de hacer dos while para cada valor a leer, puedes usar un solo do-while. De esta manera:


Hacer (do)
Leer base
Leer altura
Mientras (while) base<=0 || altura<=0
fin Mientras


Primero leemos los valores, luego llegamos a la condición. Si alguno de los valores es menor o igual a 0, volverá a pedir los valores (podemos agregarle un mensajito que indique que los valores son erróneos, como en el ejemplo 2).


1er problema:


Inicio
base,altura como reales
Hacer
Leer base
Leer altura
Mientras (base<=0 || altura<=0)
fin Mientras
area = (base * altura) / 2
Mostrar area
Fin


2do problema:


Inicio
edad como entero
estado como cadena
Hacer
Leer edad
Si edad<=0
Mostrar "Ingrese una edad válida"
fin Si
Mientras (edad<=0)
fin Mientras
Si edad < 18
estado = "Menor de edad"
Si no
Si edad>=18 && edad<=60
estado = "Mayor de edad"
Si no
estado = "de tercera edad"
Fin Si
Mostrar "Usted es " estado
Fin


3er problema:


Inicio
radio como real
PI como real
Hacer
Leer radio
Mientras (radio<=0)
fin Mientras
PI = 3.14159
area = PI * 4 * (radio^2)
Mostrar area
Fin



Saludos.
Linux User #560388

zimmerman

1.   Cree algoritmo de un programa que solicite base y la altura de un triángulo y calcule su área. Si la base o la altura son negativ volver a pedirlos hasta que ambos sean +.

Algoritmo

1.   Inicio
2.   MIENTRAS (base >  0) HACER
Leer base
SINO
ESCRIBIR Ingrese una base mayor a 0

Fin mientras
3.   MIENTRAS  (altura > 0) HACER
Leer altura
SINO
ESCRIBIR Ingrese una altura mayor a 0

Fin mientras
4.   area=(base*altura)/2
5.   MOSTRAR "area"
6.   Fin algoritmo

A mi parecer, y siguiendo la CONSIGNA, asi debe ser el algoritmo, por lo que vi, en ninguno de los otros usaste el SINO..