jueves, 11 de mayo de 2017

Ejercicios de programación

Ejercicios de programación
En el lenguaje que hayas aprendido, realiza los siguientes ejercicios.
Van de menos a más, lo que se pretende es que te asegures de que manejas:
-          Variables.
-          Operaciones.
-          Entrada y salida de datos por teclado y pantalla.
-          Condiciones.
-          Bucles.
-          Funciones.
Puedes utilizar las siguientes página para probar tu código:
-          https://www.tutorialspoint.com/codingground.htm elige el IDE de tu lenguaje de programación.
-          https://www.codechef.com/ide


1      Variables

1.      Escriba un programa que reciba como entrada el radio de un círculo y entregue como salida su perímetro y su área:
Ingrese el radio: 5
Perimetro: 31.4
Área: 78.5

radio=int(input("Introduzca el radio:"))
def perimetro_circulo(radio):
    print radio * 2 * 3.14
def area_circulo(radio):
    print radio * radio * 3.14
print "El perímetro del cículo es:"
print perimetro_circulo(radio)
print "El área del círculo es:"
print area_circulo(radio)

2.      Escriba un programa que reciba como entrada las longitudes de los dos catetos a y b de un triángulo rectángulo, y que entregue como salida el largo de la hipotenusa c del triángulo, dado por el teorema de Pitágoras: c2=a2+b2
Ingrese cateto a: 7
Ingrese cateto b: 5
La hipotenusa es 8.6023252670426267

import math
a=7
b=5
hipotenusa=math.sqrt((a*a)+(b*b ))
print "La hipotenusa es:", hipotenusa

3.      Escriba un programa que convierta de centímetros a pulgadas. Una pulgada es igual a 2.54 centímetros.
Ingrese longitud: 45
45 cm = 17.7165 in
Ingrese longitud: 13
13 cm = 5.1181 in

cm=int(input("Introduzca longitud en cm:"))
def longitudenpulgadas(cm):
    print cm / 2.54

print "La longitud en pulgadas es:"
print longitudenpulgadas(cm)

2      Condiciones

4.      Cuando la Tierra completa una órbita alrededor del Sol, no han transcurrido exactamente 365 rotaciones sobre sí misma, sino un poco más. Más precisamente, la diferencia es de más o menos un cuarto de día.
Para evitar que las estaciones se desfasen con el calendario, el calendario juliano introdujo la regla de introducir un día adicional en los años divisibles por 4 (llamados bisiestos), para tomar en consideración los cuatro cuartos de día acumulados.
Sin embargo, bajo esta regla sigue habiendo un desfase, que es de aproximadamente 3/400 de día.
Para corregir este desfase, en el año 1582 el papa Gregorio XIII introdujo un nuevo calendario, en el que el último año de cada siglo dejaba de ser bisiesto, a no ser que fuera divisible por 400.
Escriba un programa que indique si un año es bisiesto o no, teniendo en cuenta cuál era el calendario vigente en ese año:
Ingrese un anno: 1988
1988 es bisiesto

Ingrese un anno: 2011
2011 no es bisiesto.
Ingrese un anno: 1700
1700 no es bisiesto

anno=int(input("Introduzca un anno:"))
if (anno%4== 0) or (anno%400== 0):
    print "El anno es bisiesto"
else :
    print "El anno no es bisiesto"

5.      Escriba un programa que pida al usuario dos palabras, y que indique cuál de ellas es la más larga y por cuántas letras lo es.
Palabra 1: edificio
Palabra 2: tren
La palabra edificio tiene 4 letras mas que tren.
 
Palabra 1: sol
Palabra 2: paralelepipedo
La palabra paralelepipedo tiene 11 letras mas que sol
 
Palabra 1: plancha
Palabra 2: lapices
Las dos palabras tienen el mismo largo

6.      Escriba un programa que simule una calculadora básica, este puede realizar operación de suma, resta, multiplicación y división.
El programa debe recibir como entrada 2 números reales y un operador, que puede ser +, -, * o /.
La salida del programa debe ser el resultado de la operación.


Operando: 3
Operador: +
Operando: 2
3 + 2 = 5
 
Operando: 6
Operador: -
Operando: 7
6 - 7 = -1
 
Operando: 4
Operador: *
Operando: 5
4 * 5 = 20
 
Operando: 10
Operador: /
Operando: 4
10 / 4 = 2.5
 
Operando: -1
Operador: **
Operando: 4
-1 ** 4 = 1


numero1=int(input("Introduzca un numero:"))
numero2=int(input("Introduzca otro numero:"))
operacion=input("Elija operacion entre suma, resta, multiplicacion, division y potencia:")
if operacion=="suma":
    print (numero1 + numero2)
elif operacion=="resta":
    print (numero1 - numero2)
elif operacion=="multiplicacion":
    print (numero1 * numero2)
elif operacion=="division":
    print (numero1 / numero2)
elif operacion=="potencia":
    print (numero1 ** numero2)
else:
    print ("Error")

3      Bucles

7.      Escriba un programa que entregue todos los divisores del número entero ingresado:
Ingrese numero: 200
1 2 4 5 8 10 20 25 40 50 100 200

8.      Escriba un programa que pida al usuario ingresar la altura y el ancho de un rectángulo y lo dibuje utilizando asteriscos:
Altura: 3
Ancho: 5

*****
*****
*****