Sei sulla pagina 1di 19

EJERCICIOS DE TALLER DE PROGRAMACION CONCURRENTE

1. Crear una aplicación que permita leer un número del 1 al 5 y diga si es primo
o no.

integer num
string resultado
num=integer(sle_1.text)
if num=4 then
resultado="No es primo"
else
resultado="Es primo"
end if
if num>5 then
resultado="Ingresar un numero de 1-5"
end if
sle_2.text=string(resultado)
sle_1.text=""
sle_1.setfocus()

sle_1.text=""
sle_2.text=""
sle_1.setfocus()
sle_1.enabled=true
sle_2.enabled=true
cb_1.enabled=true
cb_3.enabled=true

close(ejercicio1)
2. Que pida un número y diga si es par o impar.

integer num
num=integer(sle_1.text)
if Mod( num, 2 ) = 0 then
sle_2.text=string("Es par")
else
sle_2.text=string("Es impar")
end if
sle_1.text=""
sle_1.setfocus()

3. Crear una aplicación que permita leer un valor en grados Celsius realizar la
conversión a grados Farenheit.

integer a
a=integer(sle_1.text)
sle_2.text = String(a * (9 / 5) + 32) + " ºF"

4. Que pida un número del 1 al 7 y diga el día de la semana correspondiente.

integer dia
dia=integer(sle_1.text)
if (dia= 1 ) then
sle_2.text=string("lunes")
elseif(dia=2) then
sle_2.text=string("martes")
elseif(dia=3) then
sle_2.text=string("miercoles")
elseif(dia=4) then
sle_2.text=string("jueves")
elseif(dia=5) then
sle_2.text=string("viernes")
elseif(dia=6) then
sle_2.text=string("sabado")
elseif(dia=7) then
sle_2.text=string("domingo")
else
MessageBox ("Error", "Se debe dar un número de 1 al 7" )
end if
sle_1.text=""
sle_1.setfocus()
sle_2.enabled=true
5. C r e a r u n a a p l i c a c i ó n p e r m i t a l a l e c t u r a d e m i n u t o s y c o n v e r t i r a s u
r e s p e c t i v a c a n t i d a d e n h o r a s y minutos.
integer minutos,hora,m
minutos=integer(sle_1.text)
hora=minutos*(1/60)
m=(minutos -(60*hora))
sle_2.text = string(hora) + "h" + "y" + string(m) + "m"
if minutos=0 then
sle_2.text=""
sle_1.text=""
MessageBox("Error","error al ingresar minutos")
end if
sle_2.enabled=true

6. Que pida un número del 1 al 12 y diga el nombre del mes correspondiente.

integer mes
mes=integer(sle_1.text)
if (mes= 1 ) then
sle_2.text=string("Enero")
elseif(mes=2) then
sle_2.text=string("Febrero")
elseif(mes=3) then
sle_2.text=string("Marzo")
elseif(mes=4) then
sle_2.text=string("Abril")
elseif(mes=5) then
sle_2.text=string("Mayo")
elseif(mes=6) then
sle_2.text=string("Junio")
elseif(mes=7) then
sle_2.text=string("Julio")
elseif(mes=8) then
sle_2.text=string("Agostoo")
elseif(mes=9) then
sle_2.text=string("Septiembre")
elseif(mes=10) then
sle_2.text=string("Octubre")
elseif(mes=11) then
sle_2.text=string("Noviembre")
elseif(mes=12) then
sle_2.text=string("Deciembre")
else
MessageBox ("Error", "Se debe dar un número de 1 al 12" )
end if
sle_1.text=""
sle_1.setfocus()

7. Que pida 3 números y los muestre en pantalla de menor a mayor.

real n1,n2,n3, mayor1,mayor2,mayor3


n1=real(sle_1.text)
n2=real(sle_2.text)
n3=real(sle_3.text)
if n1>n2 and n1>n3 then
if n2>n3 then
mayor1=n1
mayor2=n2
mayor3=n3
else
mayor1=n1
mayor2=n3
mayor3=n2
end if
end if
sle_4.text=string(mayor1)+" , "+string(mayor2)+" , "+string(mayor3)

if n2>n1 and n2>n3 then


if n1>n3 then
mayor1=n2
mayor2=n1
mayor3=n3
else
mayor1=n2
mayor2=n3
mayor3=n1
end if
end if
sle_4.text=string(mayor1)+" , "+string(mayor2)+" , "+string(mayor3)

if n3>n1 and n3>n2 then


if n1>n2 then
mayor1=n3
mayor2=n1
mayor3=n2
else
mayor1=n3
mayor2=n2
mayor3=n1
end if
end if
sle_4.text=string(mayor1)+" , "+string(mayor2)+" , "+string(mayor3)

8. Crear una aplicación que realice la potencia de n números.

double base, exponente, potencia


string numero
base=double(sle_1.text)
exponente=double(sle_2.text)
potencia = (base)^(exponente)
sle_3.text=string(potencia)

9. Que pida 3 números y los muestre en pantalla de mayor a menor.

real n1,n2,n3, mayor1,mayor2,mayor3


n1=real(sle_1.text)
n2=real(sle_2.text)
n3=real(sle_3.text)
if n1>n2 and n1>n3 then
if n2>n3 then
mayor1=n1
mayor2=n2
mayor3=n3
else
mayor1=n1
mayor2=n3
mayor3=n2
end if
end if
sle_4.text=string(mayor1)+" , "+string(mayor2)+" , "+string(mayor3)

if n2>n1 and n2>n3 then


if n1>n3 then
mayor1=n2
mayor2=n1
mayor3=n3
else
mayor1=n2
mayor2=n3
mayor3=n1
end if
end if
sle_4.text=string(mayor1)+" , "+string(mayor2)+" , "+string(mayor3)

if n3>n1 and n3>n2 then


if n1>n2 then
mayor1=n3
mayor2=n1
mayor3=n2
else
mayor1=n3
mayor2=n2
mayor3=n1
end if
end if
sle_4.text=string(mayor1)+" , "+string(mayor2)+" , "+string(mayor3)

10. Crear una aplicación que muestre la tabla de multiplicar del 1 al 12.
integer n,a
integer res
n=integer(sle_1.text)
if n<=12 then
else
MessageBox ("Error", "Se debe dar un número de 1 al 12" )
sle_1.text=""
lb_1.reset()
end if
for a=1 to 12
res=n*a
lb_1.additem(string(n)+string("x")+string(a)+string("=")+string(res))
next

11. Que pida 3 números y los muestre en pantalla de mayor a menor.

real n1,n2,n3, mayor1,mayor2,mayor3


n1=real(sle_1.text)
n2=real(sle_2.text)
n3=real(sle_3.text)
if n1>n2 and n1>n3 then
if n2>n3 then
mayor1=n1
mayor2=n2
mayor3=n3
else
mayor1=n1
mayor2=n3
mayor3=n2
end if
end if
sle_4.text=string(mayor1)+" , "+string(mayor2)+" , "+string(mayor3)
if n2>n1 and n2>n3 then
if n1>n3 then
mayor1=n2
mayor2=n1
mayor3=n3
else
mayor1=n2
mayor2=n3
mayor3=n1
end if
end if
sle_4.text=string(mayor1)+" , "+string(mayor2)+" , "+string(mayor3)

if n3>n1 and n3>n2 then


if n1>n2 then
mayor1=n3
mayor2=n1
mayor3=n2
else
mayor1=n3
mayor2=n2
mayor3=n1
end if
end if
sle_4.text=string(mayor1)+" , "+string(mayor2)+" , "+string(mayor3)

12. Que pida un número y diga si es positivo o negativo.

double numero
string resultado
numero=double(sle_1.text)
if numero= 0 then
resultado="Es Neutro"
elseif numero >0 then
resultado="Es Positivo"
else
resultado="Es Negativo"
end if
sle_2.text=string(resultado)

13. Que pida un número y diga si es mayor de 100.


double numero
string resultado
numero =double(sle_1.text)
if numero = 100 then
resultado=string("Es igual a 100")
end if
if numero > 100 then
resultado=string("Es mayor que 100")
elseif numero < 100 then
resultado=string("Es menor que 100")
end if
sle_2.text=resultado

14. Que pida una letra y detecte si es una vocal.

string resultado
if Match(sle_1.text,"a") or Match(sle_1.text,"A") then
resultado=string("Es una vocal")
elseif Match(sle_1.text,"e") or Match(sle_1.text,"E") then
resultado=string("Es una vocal")
elseif Match(sle_1.text,"i") or Match(sle_1.text,"I") then
resultado=string("Es una vocal")
elseif Match(sle_1.text,"o") or Match(sle_1.text,"O") then
resultado=string("Es una vocal")
elseif Match(sle_1.text,"u") or Match(sle_1.text,"U") then
resultado=string("Es una vocal")
else
MessageBox ("Error", "No es vocal" )
end if
sle_2.text=resultado
sle_1.text=""
sle_1.setfocus()

15. Que pida tres números y detecte si se han introducido en orden creciente.
integer n1,n2,n3
string orden
n1=integer(sle_1.text)
n2=integer(sle_2.text)
n3=integer(sle_3.text)
if n1<n2 then
if n2<n3 then
orden=string("Orden creciente")
end if
else
orden=string("No están introducidos en orden creciente")
end if
sle_4.text=orden

16. Que pida 10 números y diga cuál es el mayor y cual el menor.

integer num1,num2,num3,num4,num5,num6,num7,num8,num9,num10,mayor,menor
mayor=0
menor=10
num1=integer(sle_1.text)
if num1>mayor then
mayor=num1
elseif num1<menor then
menor=num1
end if
sle_11.text=string(mayor)
sle_12.text=string(menor)

num2=integer(sle_2.text)
if num2>mayor then
mayor=num2
elseif num2<menor then
menor=num2;
end if
sle_11.text=string(mayor)
sle_12.text=string(menor)

num3=integer(sle_3.text)
if num3>mayor then
mayor=num3
elseif num3<menor then
menor=num3
end if
sle_11.text=string(mayor)
sle_12.text=string(menor)

num4=integer(sle_4.text)
if num4>mayor then
mayor=num4
elseif num4<menor then
menor=num4
end if
sle_11.text=string(mayor)
sle_12.text=string(menor)

num5=integer(sle_5.text)
if num5>mayor then
mayor=num5
elseif num5<menor then
menor=num5
end if
sle_11.text=string(mayor)
sle_12.text=string(menor)

num6=integer(sle_6.text)
if num6>mayor then
mayor=num6
elseif num6<menor then
menor=num6
end if
sle_11.text=string(mayor)
sle_12.text=string(menor)

num7=integer(sle_7.text)
if num7>mayor then
mayor=num7
elseif num7<menor then
menor=num7
end if
sle_11.text=string(mayor)
sle_12.text=string(menor)

num8=integer(sle_8.text)
if num8>mayor then
mayor=num8
elseif num8<menor then
menor=num8
end if
sle_11.text=string(mayor)
sle_12.text=string(menor)

num9=integer(sle_9.text)
if num9>mayor then
mayor=num9
elseif num9<menor then
menor=num9
end if
sle_11.text=string(mayor)
sle_12.text=string(menor)

num10=integer(sle_10.text)
if num10>mayor then
mayor=num10
elseif num10<menor then
menor=num10
end if
sle_11.text=string(mayor)
sle_12.text=string(menor)
//****//
sle_11.enabled=true
sle_12.enabled=true

17. Que pida tres números e indicar si el tercero es igual a la suma del primero y el segundo.

integer n1,n2,n3,suma
string resultado
n1=integer(sle_1.text)
n2=integer(sle_2.text)
n3=integer(sle_3.text)
suma=n1+n2
if suma=n3 then
resultado=string(n3)+" es la suma de "+string(n1)+ " y "+string(n2)
else
resultado=string(n3)+" no es la suma de "+string(n1)+ " y "+string(n2)
end if
st_5.text=string(resultado)
18. Que tome dos números del 1 al 5 y diga si ambos son primos.

integer num1,num2
string resultado
num1=integer(sle_1.text)
num2=integer(sle_2.text)
if not(num1)=4 and not(num2)=4 then
resultado="Ambos son primos"
else
resultado="Los números, o uno de ellos, no son primos"
end if
sle_3.text=string(resultado)
19. Que tome dos números y diga si ambos son pares o impares.

integer num1, num2


string resultado
num1=integer(sle_1.text)
num2=integer(sle_2.text)
if Mod (num1, 2) = 0 and Mod (num2,2) = 0 then
resultado="Ambos son pares"
sle_3.text=string(resultado)
else
resultado="los numeros, o uno de ellos, no son pares"
sle_3.text=string(resultado)
end if
20. Que tome tres números y diga si la multiplicación de los dos primeros es igual al tercero.
integer num1,num2,num3
string resultado
num1=integer(sle_1.text)
num2=integer(sle_2.text)
num3=integer(sle_3.text)
if (num1*num2)=num3 then
resultado=string(num3)+" es la multiplicación de "+string(num1)+" y "+string(num2)
else
resultado=string(num3)+" no es la multiplicación de "+string(num1)+" y
"+string(num2)
end if
st_5.text=string(resultado)
21. Que muestre un menú donde las opciones sean “Equilátero”, “Isósceles” y “Escaleno”,
pida una opción y calcule el perímetro del triángulo seleccionado.

int lado,base,perimetro
lado=integer(sle_1.text)
base=integer(sle_2.text)

if(rb_1.checked=true)then
perimetro=(3*lado)
end if
if(rb_2.checked=true)then
perimetro=(2*lado+base)
end if
if(rb_3.checked=true)then
perimetro=(lado+lado+lado)
end if
sle_3.text=string(perimetro)
22. Q u e p a s e d e K g a o t r a u n i d a d d e m e d i d a d e m a s a , m o s t r a r e n p a n t a l l a
u n m e n ú c o n l a s o p c i o n e s posibles.
integer kg
double conversion
string medida
kg=integer(sle_1.text)

if rb_1.checked then
conversion=kg/10
medida=" Hectogramos"
elseif rb_2.checked then
conversion=kg/100
medida=" Decagramos"
elseif rb_3.checked then
conversion=kg/1000
medida=" Gramos"
elseif rb_4.checked then
conversion=kg/10000
medida=" Decigramos"
elseif rb_5.checked then
conversion=kg/100000
medida=" Centigramos"
elseif rb_6.checked then
conversion=kg/1000000
medida=" Miligramos"
end if
sle_2.text=string(conversion)+string(medida)
23. Q u e l e a u n i m p o r t e b r u t o y c a l c u l e s u i m p o r t e n e t o , s i e s m a yo r d e
1 5 . 0 0 0 s e l e a p l i c a r a u n 1 6 % d e impuestos, en caso contrario se le aplicara un
10%.

real importe, deduccion, impneto


importe=real(sle_1.text)

if importe>15000 then
deduccion=importe*0.16
else
deduccion=importe*0.1
end if
impneto=(importe)-(deduccion)
sle_2.text=string(impneto)
24. Que lea una hora en hora:minutos:segundos y diga la hora que es un segundo después.

integer horas, minutos, segundos


horas=integer(sle_1.text)
minutos=integer(sle_2.text)
segundos=integer(sle_3.text)
segundos=segundos+1;
if minutos=59 then
minutos=0
elseif horas=23 then
horas=0
elseif segundos=59 then
segundos=0
minutos=minutos+1
elseif minutos=59 then
minutos=0
horas=horas+1
elseif horas=23 then
horas=0
end if
sle_4.text=string( horas)+" : "+string(minutos)+" : "+string(segundos)
25. Que calcule el sueldo que le corresponde al trabajador de una empresa que cobra 40.000
euros anuales, el programa debe realizar los cálculos en función de los siguientes criterios:
 si lleva más de 10 años en la empresa se le aplica un aumento del 10 %.
 si lleva menos de 10 años, pero más que 5 se le aplica un aumento del 7%.
 si lleva menos de 5 años, pero más que 3 se le aplica un aumento del 5%.
 si lleva menos de 3 años se le aplica un aumento del 3%.

real importe, aumento


integer antiguedad
importe=40000
antiguedad=integer(sle_1.text)
if antiguedad>=10 then
aumento=importe*0.1
elseif antiguedad<10 and antiguedad>=5 then
aumento=importe*0.07
elseif antiguedad<5 and antiguedad>=3 then
aumento=importe*0.05
else
aumento=importe*0.03
end if
sle_2.text=string((importe)+(aumento))
26. Determinar si un número es negativo. Hazlo (a) con dos if y (b) con un ifelse.

integer n
n=integer(sle_1.text)
if n<0 then
sle_2.text="El numero es negativo"
end if
if n>0 then
sle_2.text="El numero es positivo"
elseif n=0 then
sle_2.text="nulo"
end if
sle_1.text=""
sle_1.setfocus()
27. Determinar si un número es mayor que 35. Hazlo (a) con dos if y (b) con un ifelse.

int numero
string r
numero = INTEGER(sle_1.Text)
If numero > 35 Then
r= "Es mayor que 35"
sle_2.text=string(r)
end if
If numero < 35 Then
r = "Es menor que 35"
sle_2.text=string(r)
Elseif numero = 35 Then
r = "El numero es 35"
sle_2.text=string(r)
End If
28. Determinar si un número es positivo y menor que 100.

int numero
numero = INTEGER(sle_1.Text)
If numero>=0 and numero <=100 Then
sle_2.Text = "Es positivo menor que 100"
ElseIf numero >100 Then
sle_2.Text = "Es positivo mayor que 100"
Else
sle_2.Text = "El numero es negativo"
End If
29. Eleve al cuadrado un número si es par y al cubo si es impar.

integer n,i
n=integer(sle_1.text)
for i=1 to n
if mod(i,2)=0 then
sle_2.text=string(n*n)
else
sle_2.text=string(n^3)
end if
sle_1.text=""
sle_1.setfocus()
next
30. Que calcule el gasto de agua en una vivienda dado el número de litros
gastados- siendo el sistema de cobro:
 la cuota fija mensual es de S/. 6.00
 los primeros 50 litros son gratis (opción 1)
 entre 50 y 200 litros se cobra el litro a S/. 0.10 (opción 2)

int num, resultado


num=integer(sle_1.text)

if num<=50 then
sle_2.text="consumo gratuito"
elseif num>50 and num<=200 then
resultado=(integer(num)-50)*0.1
sle_2.text="S/."+string(resultado)
else
sle_2.text=string("S/. 6.0")
end if

Potrebbero piacerti anche