PDA

Ver la versión completa : Ayuda con este ejercicio



alkeops
19/01/2011, 19:00
Usar explícitamente las estructuras:

If... Then, For...Next y Do While...Loop

Para resolver lo siguiente:

Crear un programa que le solicitará un número al usuario. Si dicho número es par solicitará que le introduzca 10 números enteros al azar y sacará el promedio. Si el número introducido es impar, solicitará 7 número para hallar la mediana de dichos números.

Alguien me puede ayudar? No se como usar for... next ni do while... loop.
Alguna idea?

Hilel
19/01/2011, 19:21
Te doy la estructura, no me acuerdo las funciones

if x = "usar la funcion para sacar par, no la recuerdo" then
for i = 1 to 10
pedir numero > Y
Y = Y + Y

next i
mensaje final = Y / 10

else
for i = 1 to 7
pedir numero > Y
"usar la funcion de la media por aca"

next i
"o por aca (no recuerdo como se usaba y da paja buscar"

end if

Nighthawk
19/01/2011, 19:28
ke lenguaje? (huele a VB)

Hilel
19/01/2011, 19:29
yo pense lo mismo q vos :D

LPNicolas
19/01/2011, 22:31
Puede ser cualquiera, a mi me daban ejercicios asi cuando aprendia C en la facu.

alkeops
20/01/2011, 01:42
Si es VB =O

Nighthawk
20/01/2011, 05:25
For...Next y Do While...Loop


C, java y action script agrupan con llaves {}

VB es el unico ke conozco de los mas comunes ke usa esas instrucciones :P


seria:


X = InputBox("asd X")
IF (X mod 2 = 0) Then:
For i = 1 to 10:
Do While (Y <> Null) and (Y <> ""):
Y = InputBox("asd Y")
Loop
suma = suma + Y
Next i
MsgBox ("promedio = " and suma/10)
Else:
For i = 1 to 7:
Do While (Y <> Null) and (Y <> ""):
Array[i] = InputBox("asd Y")
Loop
Next i
For j = 1 to Len(Array[]) - 1:
For z = 1 to Len(Array[]) - j:
If Array[z] > Array[z+1] Then:
tmp = Array[z]
Array[z+1] = Array[z]
Array[z] = tmp
End If
Next z
Next j
MsgBox ("mediana = " and Array[Div(Len(Array[])/2)])
End if

esto es NUCLEO DE CALCULO.
validaciones, declaraciones y estructuras corren por tu cuenta

hace siglos ke no uso VB :P
tis leik engrish toking spanish....tens tu mis da raigt guord after som taim.....

Althail
20/01/2011, 10:51
Muchachos, aprovecho el th para preguntar por chusma que tal esta la Carrera de técnico superior en programación?
Yo si tengo que hacer todas esas cosas con muchas cosas raras cobraría un huevo u.u jaja

Hilel
20/01/2011, 11:03
Muchachos, aprovecho el th para preguntar por chusma que tal esta la Carrera de técnico superior en programación?
Yo si tengo que hacer todas esas cosas con muchas cosas raras cobraría un huevo u.u jaja

depende que tanto te gusta estar en la pc para programar "esas cosas"
y lo que estas viendo son estructuras basicas. :D

Althail
20/01/2011, 14:31
Naaa yo ni ahi hago eso, no es lo mio, solo que me pareció curioso.

alkeops
22/01/2011, 18:22
me pueden explicar un poco mas lo de do while.. loop?

Nighthawk
22/01/2011, 18:33
do while se ejecuta (en ese bloke) para ke el mensaje de entrada de un numero siga apareciendo si el usuario no introduce un numero.

y la escribi mal :P
es

Do While (Y = Null) or (Y = ""):

'Y' no esta declarada, asi ke vale Null.
por lo tanto, en la primera vuelta del bucle, se activa la instruccion.


Y = InputBox("asd Y")

en ese momento, 'Y' pasa a valer lo ke el usuario entre.
en la salida del bucle,...


Loop

vuelve a evaluar 'Y'.
si 'Y' resulta ser un espacio en blanco, o una letra o una cadena de letras, el bucle se vuelve a activar y el cuadro de entrada vuelve a aparecer, para planchar el valor de Y.

alkeops
22/01/2011, 18:46
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim i, v(20) As Integer
Dim promedio As Double
Dim suma As Integer = 0
If Val(Numerotxt.Text) Mod 2 = 0 Then
For i = 1 To 10
v(i) = InputBox("Escribe el " & i & " número")
suma = suma + V(i)
Next
promedio = suma / 10
GroupBox2.Visible = True
Promtxt.Text = promedio
Else
For i = 1 To 7
V(i) = InputBox(i)
suma = suma + V(i)
Next


End If
End Sub

Hasta ahorita el programa ya calcula el promedio me falta la mediana y el uso de do while .. loop ideas?

alkeops
23/01/2011, 15:06
me falta la media de los 7 numeros pero no se como sacarla alguien me puede dar una guia?

freedom
13/05/2011, 00:08
No tiene sentido que responda esto ahora, pero me viene bien para que practique yo:


#include <stdio.h>
#include <conio.h>

main()
{
int a , b=0 , c ;
float d=0 ;

printf( "\n\t Ingrese un numero \n\n");
scanf( "%d" , &a );

if(a%2==0){
printf("\n\t Usted ingreso un numero par, ingrese 10 numeros para sacar su promedio \n ");

for( b=1 ; b<=10 ;b++)
{
scanf("%d",&c);
d = (d+c) ;
}
d = (d/10) ;
printf("\n\n el promedio es %.2f" , d );
}
else
{
printf("\n\n Usted ingreso un numero impar, ingrese 7 numeros para sacar su promedio \n\n");

while( b<7 )
{
scanf("%d",&c);
d = (d+c) ;
b++ ;
}
d = (d/7) ;
printf("\n\n el promedio es %.2f \n\n" , d );
}
printf("\n\n\t\t FIN DEL PROGRAMA, PRESIONE CUALQUIER TECLA PARA SALIR \n\n");

getch();
}


En C

Suerte en la vida