You are on page 1of 44

Universidad Central

del Ecuador
Facultad de Ingeniera, Ciencias
Fsicas y Matemtica

Carrera de Ingeniera en Diseo


Industrial

Asignatura:
Programacin 1
TEMA: Programa diseado para
descubrir signo zodiacal, numero de
suerte, color del signo, das vividos,
edad, vueltas que ha dado la tierra
desde su nacimiento.
FECHA DE ENTREGA: 10/07/2015
CURSO: Primero
Integrantes:
1) Dvila Vanessa
2) Gualpa Jefferson

3) Dayana Ortiz
4) Carlos Pillajo
5) Arelys Quinatoa
6) Estefana Ramrez

ndice
Capitulo I : Introduccion ____________________________________________3
3.1 Como se origina la programacion
3.2 Que programas utilizamos para la investigacion
3.2.1

Java

3.2.2 Visual Basic


3.2.3 C
Capitulo ll: Objetivos________________________________________________5
5.1 Objetivo Especifico
5.2 Ojetivo general
Capitulo III: Marco Teorico___________________________________________6
6.1 Visual Basic
6.2 C
6.3 Java
Capitulo lV: Planteamiento del problema y Resolucion___________________23
Capitulo V: Conclusiones y Recomendaciones
Capitulo Vl: Bibliografia

1) Introduccin

Cmo se origina la programacin?


La programacin surgi de la idea de Charles Babagge, la cual se le ocurri a este
hombre a mediados del siglo XIX. Era un profesor matemtico de la universidad de
Cambridge e inventor ingls, que al principio del siglo XIX predijo muchas de las
teoras en que se basan los actuales ordenadores. Consista en lo que l
denominaba la maquina analtica, pero que por motivos tcnicos no pudo
construirse hasta mediados del siglo XX. Con l colaboro Ada Lovedby, la cual es
considerada como la primera programadora de la historia, pues realizo programas
para aqulla supuesta mquina de Babagge, en tarjetas perforadas. Como la
maquina no llego nunca a construirse, los programas de Ada, lgicamente,
tampoco llegaron a ejecutarse, pero si suponen un punto de partida de la
programacin, sobre todo si observamos que en cuanto se empez a programar,
los programadores utilizaron las tcnicas diseadas por Charles Babagge, y Ada,
que consistan entre otras, en la programacin mediante tarjetas perforadas. A
pesar de ello, Ada ha permanecido como la primera programadora de la historia.
Se dice por tanto que estos dos genios de antao, se adelantaron un siglo a su
poca, lo cual describe la inteligencia de la que se hallaban dotados.

Qu programas utilizamos para esta investigacin?


Los programas a utilizarse en esta investigacin son Java, Visual Basic y C++,
los cuales trataremos de explicar de la mejor forma.

JAVA
3

Es un lenguaje de programacin con el que podemos realizar cualquier tipo de


programa. En la actualidad es un lenguaje muy extendido y cada vez cobra ms
importancia tanto en el mbito de Internet como en la informtica en general. Una
de las principales caractersticas por las que Java se ha hecho muy famoso es que
es un lenguaje independiente de la plataforma. Eso quiere decir que si hacemos
un programa en Java podr funcionar en cualquier ordenador del mercado.

VISUAL BASIC
Est diseado para la creacin de aplicaciones de manera productiva con
seguridad de tipos y orientado a objetos. Visual Basic permite a los
desarrolladores centrar el diseo en Windows, la web y dispositivos mviles.
Como ocurre con todos los lenguajes destinados a Microsoft .NET Framework, los
programas escritos en Visual Basic se benefician de la seguridad y la
interoperabilidad de los lenguajes.

C
C++: es un lenguaje de programacin orientado a objetos que toma la base del
lenguaje C y le agrega la capacidad de abstraer tipos como en Smalltalk.
C++ es un lenguaje de programacin diseado a mediados de los aos 80 por
Bjarne Stroustrup. La intencin de su creacin fue el extender al exitoso lenguaje
de programacin C con mecanismos que permitieran la manipulacin de objetos.
En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el
C++ es un lenguaje hbrido. Posteriormente se aadieron facilidades de
programacin genrica, que se sum a los otros dos paradigmas que ya estaban
admitidos (programacin estructurada y la programacin orientada a objetos).
El programa a realizarse se tratar de identificar el signo del zodiaco del usuario
sus beneficio y el complemento con el mundo, todo lo que interviene en tal
ejecucin y as usaremos los tres lenguajes para explicarlo y que el usuario tenga
la satisfaccin de probarlo.

2) Objetivos:
Objetivo Especfico:

A travs de los conocimientos adquiridos, elaborar un cdigo que nos


indique signo zodiacal, nmero de la suerte, color, das vividos hasta la
actualidad, cuntos aos tiene, y cuantas vueltas a dado el mundo desde el
da de su nacimiento y traducirlos a los tres idiomas Visual basic, C++ u
Java.

Objetivos General:
1) Desarrollar en los alumnos la capacidad de entender ciertos conceptos y
trminos para la rpida solucin de problemas y elaborar algoritmos
para encontrar sus soluciones.
2) Aprender las principales diferencias de los programas en tanto a la
estructura de su cdigo.
3) Conocer el lenguaje especfico utilizado en los tres programas: Visual
Basic, Visual Studio y java.
4) Implementar los algoritmos, utilizando herramientas y lenguajes de
programacin pero ms que todo sintetizar cada vez ms el algoritmo,
es decir, hacerlo ms sencillo.
5) Desarrollar en el alumno la capacidad de escribir algoritmos para la
resolucin de problemas previamente conceptualizados.
6) Ejercitar al alumno para que pueda examinar problemas y crear
abstracciones, es decir, descomponer problemas complejos en subproblemas para que sean as ms fciles de resolver.
7) Conseguir la fcil resolucin primero de problemas sencillos, de
problemas de mediana complejidad, y luego para pasar a resolver
problemas de diversa ndole con ayuda de todos los trminos del
lenguaje utilizado en cada uno de los programas.
5

3) Marco terico
VISUAL BASIC
El lenguaje Visual Basic, es un lenguaje de programacin basado en el visual
Basic, enfocado a la realizacin de programas sobre las herramientas Excel,
Access, Word...., mediante macros en vba podemos crear nuevas funciones para
nuestras hojas Excel, personalizar estilos y formatos, crear programas para la
resolucin de clculos complejos, automatizar tareas...
Una vez realizado el cdigo vba, podemos ejecutar el programa mediante la
creacin de botones, nuevos mens... de tal forma que la aplicacin creada resulte
intuitiva y de fcil manejo.
Macros Visual Basic con Excel
Creacin de nuevas funciones- como por ejemplo la funcin "cdigo" que convierte
dgitos alfanumricos a dibujos basados en codificacin de cdigo de barras.
Automatizacin de tareas repetitivas- realizacin de informes automticos,
conexin con bases de datos y otros programas.
Resolucin de clculos complejos e iterativos
Creacin de programas, como gestores documentales, software de
planificacin.....
Las macros son un grupo de instrucciones programadas bajo entorno vba
(visual basic para aplicaciones), cuya tarea principal es la automatizacin de
tareas repetitivas y la resolucin de clculos complejos.
Estructuras de iteracin
Frecuentemente algunas lneas de cdigo de repiten muchas veces con el
consiguiente aumento del tamao del programa. Esto se solucionado mediante los
llamados estructuras de iteracin, tambin llamadas ciclos de repeticin o bucles.
Estos son:
While - Wend
Esta es una iteracin en la que no sabemos de antemano cuantas veces se
repetir el ciclo por lo tanto debe haber una condicin para salir de el ya que en
caso contrario el ciclo se repetira en forma indefinida.
La sintaxis del Do While es como sigue:
Do { While | Until } Condicin
[Instrucciones a repetir]
6

[Exit Do ]
[Instrucciones a repetir]
Loop
tambin puede ser de la forma
Do
[Instrucciones a repetir]
[Exit Do]
[Instrucciones a repetir]
Loop { While | Until } Condicin
Los elementos que se encuentran entre corchetes [ ] son opcionales, Exit Do
provocar que el Do While termine.
As tendramos por ejemplo:
Sub EjemploDoWhile()
Dim contador As Integer
Dim numero As Integer
numero = 9
Do Until numero = 10
If numero <= 0 Then Exit Do
numero = numero 1
contador = contador + 1
Loop
MsgBox Se alcanz el valor & numero & & contador
End Sub
For - Next
Esta es una iteracin en la que sabemos de antemano cuantas veces se repetir
el ciclo, por lo tanto no hace falta una condicin para salir del mismo.
.If - Then - Else
La estructura de decisin se llama as pues puede, luego de evaluar una
condicin, ejecutar un bloque de cdigo u otro.
La instruccin If Then else en VBA es necesaria para tomar decisiones dentro del
cdigo en VBA
La sintaxis es como sigue:
If condicin Then
[Instrucciones a ejecutar]
[ ElseIf condicin2 Then ]
[Instrucciones a ejecutar]]
[ Else
[Instrucciones a ejecutar]]
End If
O tambin
If condition Then [Instrucciones a ejecutar] [ Else [ Instrucciones a ejecutar] ]
7

En esta estructura condicin representa el caso que debe cumplirse para que se
ejecute la primera parte de la condicin, elseif es una parte opcional que se
ejecutara solo si la parte anterior no se cumple y se requiere aadir alguna otra
condicin, mientras que else hace que todos los casos en los que no se haya
cumplido ninguno de los casos previos se pueda ejecutar las instrucciones
siguientes, as tendramos por ejemplo:
Sub EjemploIfThenElse()
a = 12
If a = 8 Then
MsgBox 1
ElseIf a = 12 Then
MsgBox 2
Else
MsgBox 3
End If
End Sub
Si a vale 8 entonces se ejecutara el primer mensaje, si a en cambio valiese 12
se ejecutara el segundo mensaje, en todos los dems valores posibles de a se
ejecutara el tercer mensaje.
Select - Case
La estructura de decisin If-Then-Else puede anidarse y como este anidamiento se
puede repetir tantas veces como el problema lo exija, a veces el cdigo suele
hacerse confuso y frecuentemente da lugar a errores, en estos casos se puede
recurrir a la estructura de decisin Select-Case.
La estructura Select en VBA es importante porque nos permite tener un control de
las instrucciones agrupndolas, la sintaxis a emplear es como sigue:
Select [ Case ] expresin a evaluar
[ Case lista de expresiones
[Instrucciones a ejecutar] ]
[ Case Else
[ Instrucciones a ejecutar en el caso del else] ]
End Select
Primero tenemos la expresin a evaluar, en esta de debe evaluarse un dato el cual
puede encontrarse dentro de la lista de expresiones.
As podramos encontrar mostrar el siguiente ejemplo de Select Case en VBA
Sub EjemploSelectCase()
Dim numero As Integer
numero = 8
Select Case numero
Case 1 To 5
MsgBox El nmero esta entre 1 y 5
8

Case 6, 7, 8
MsgBox El nmero esta entre 6, 7 y 8
Case 9 To 10
MsgBox El nmero esta entre 9 y 10
Case Else
MsgBox El nmero no esta entre 1 y 10
End Select
End Sub
Dependiendo del valor de la variable numero se ejecutar el bloque
correspondiente.
Tipos de datos, funciones y subrutinas:
Tipos de datos
Una variable simple es una porcin de memoria donde se puede almacenar un
valor y se les debe dar un nombre para identificarlas entre s, tambin estn
asociados a un tipo de dato.
Un tipo de dato es el rango de valores que las variables pueden aceptar o, dicho
de otra manera, la cantidad de memoria que se reserva para albergar dicho rango.
Por ejemplo la variable de tipo Integer, puede guardar valores en un entorno de
-32.768 a +32.787 ocupando 2 bytes.
Todos los tipos de datos se resumen en la tabla de abajo.

JAVA
Java es un lenguaje de programacin de propsito general, concurrente, orientado
a objetos que fue diseado especficamente para tener tan pocas dependencias
de implementacin como fuera posible. Su intencin es permitir que los
desarrolladores de aplicaciones escriban el programa una vez y lo ejecuten en
9

cualquier dispositivo, lo que quiere decir que el cdigo que es ejecutado en una
plataforma no tiene que ser recompilado para correr en otra. Java es, a partir de
2012, uno de los lenguajes de programacin ms populares en uso,
particularmente para aplicaciones de cliente-servidor de web, con unos 10
millones de usuarios reportados.
Para que es necesario java?
Hay muchas aplicaciones y sitios web que no funcionarn a menos que tenga
Java instalado y cada da se crean ms. Java es rpido, seguro y fiable. Desde
porttiles hasta centros de datos, desde consolas para juegos hasta sper
computadoras, desde telfonos mviles hasta Internet, Java est en todas partes.

Pasado y presente de java


Java fue pensado originalmente para utilizarse en cualquier tipo de
electrodomstico pero la idea fracas. Uno de los fundadores de Sun rescat la
idea para utilizarla en el mbito de Internet y convirtieron a Java en un lenguaje
potente, seguro y universal gracias a que lo puede utilizar todo el mundo y es
gratuito. Una de los primeros triunfos de Java fue que se integr en el navegador
Netscape y permita ejecutar programas dentro de una pgina web, hasta
entonces impensable con el HTML.
Actualmente Java se utiliza en un amplio abanico de posibilidades y casi cualquier
cosa que se puede hacer en cualquier lenguaje se puede hacer tambin en Java y
muchas veces con grandes ventajas. Para lo que nos interesa a nosotros, con
Java podemos programar pginas web dinmicas, con accesos a bases de datos,
utilizando XML, con cualquier tipo de conexin de red entre cualquier sistema. En
general, cualquier aplicacin que deseemos hacer con acceso a travs web se
puede hacer utilizando Java.

Variables en java
Java es un lenguaje tipado y nos obliga a declarar nuestras variables antes de
poder hacer uso de ellas, con esta declaracin le indicamos al compilador el
espacio en memoria que debe de reservar para almacenar la informacin. Por
ejemplo:
String cliente;
Aqu estamos reservando memoria para una variable de tipo String y la
identificamos con el nombre cliente. De ahora en adelante si en el programa
hablamos de cliente, estamos haciendo referencia a esa porcin de memoria y al
valor que contiene.
10

Podemos asignarle algn valor en el momento de declarar una variable. Por


ejemplo:
String cliente = "Isaac Newton";

Nombre de la variable
El nombre debe ser nico en el contexto del programa. Adems debe seguir las
siguientes reglas:

No puede ser una palabra reservada del lenguaje o un literal booleano (true
o false)

Puede contener cualquier carcter Unicode, pero no puede comenzar con


un nmero

No debe contener los smbolos que se utilicen como operadores ( + , - , ?,


etc )

Por convencin, los nombres de variables comienzan con una letra en


minscula. Si un nombre consiste en ms de una palabra, se escribir sin
espacios entre ellas y cada palabra (salvo la primera) comenzar con una
letra mayscula (por ejemplo: estaBienEsteNombre)

Tipo de variable
Cada variable debe tener un tipo de dato predefinido. Esto determina el rango de
valores que puede almacenar y qu operaciones se pueden realizar as como el
resultado que te dar. Por ejemplo, una variable de tipo entero puede almacenar
nmeros sin decimales y puede realizar operaciones aritmticas, pero no puede
contener palabras.
Existen dos categoras de variables: las de tipo primitivo y las referenciadas. Una
variable de tipo primitivo accede al valor asignado directamente. Las referenciadas
acceden a travs de un puntero, es decir, no almacenan un valor sino una
direccin de memoria. Estas ltimas son utilizadas por las matrices, las clases y
las interfaces.

Sentencia/ switch

11

La sentencia switch se encarga de estructurar una seleccin mltiple. Al contrario


del enunciado if-else que slo podemos indicar dos alternativas, maneja un
nmero finito de posibilidades. La estructura general del enunciado switch es la
siguiente:
switch( expresin ) {
case constante1:
sentencia1;
...
break;
...
case constanteN:
sentenciaN;
...
break;
default:
sentencia;
...
break
}

El valor de la expresin y de las constantes tiene que ser de tipo char, byte, short o
int. No hay lugar para booleanos, reales ni long porque, en la ejecucin, todos los
valores que incorporamos se transforman en valores de tipo int.
Al evaluar la expresin de switch, el intrprete busca una constante con el mismo
valor. Si la encuentra, ejecuta las sentencias asociadas a esta constante hasta que
tropiece con un break. La sentencia break finaliza la ejecucin de esta estructura.
Si no encuentra ninguna constante que coincida con la expresin, busca la lnea
default. Si existe, ejecuta las sentencias que le siguen. La sentencia default es
opcional.
ESTRUCTURA O ESQUEMA DE DECISIN EN JAVA. IF ELSE , IF ELSE IF.
La instruccin if else permite controlar qu procesos tienen lugar, tpicamente
en funcin del valor de una o varias variables, de un valor de clculo o booleano, o
de las decisiones del usuario. Ejemplo sencillo:

//if sencillo
if ( admitido == true) { System.out.println ("Se ha admitido el valor"); }
12

//if else sencillo


if ( admitido == true) {
System.out.println ("Se ha admitido el valor");
} else {
System.out.println ("No se ha admitido el valor");
}
//if con else if y clusula final else
if (DesplazamientoX == 0 && DesplazamientoY == 1) {
System.out.println ("Se procede a bajar el personaje 1 posicin");
}
else if (DesplazamientoX == 1 && DesplazamientoY == 0) {
System.out.println ("Se procede a mover el personaje 1 posicin a la
derecha"); }
else if (DesplazamientoX == -1 && DesplazamientoY == 0) {
System.out.println ("Se procede a mover el personaje 1 posicin a la
izquierda");
}
else {
System.out.println ("Los valores no son vlidos");
}

NOTA: El System.out.print (....); se utiliza en Java para mostrarle al usuario

un mensaje,
pedir una variable para iniciar el proceso o el resultado final del algoritmo que
Variable contador
Cuando trabajamos con bucles repetitivos, muchas veces estamos interesados en
saber en que repeticin estamos. Para contar las repeticiones, se suele usar una
variable que es llamada contador.
13

La tcnica es:
1 Inicializar una variable a cero o uno antes del ciclo repetitivo.
2 Dentro del ciclo repetitivo, incrementar en uno la variable.

public class WhileCounter {


public static void main(String[] args) {
int counter = 0;
while (counter < 5) {
counter = counter + 1;
System.out.println(counter);
}
}
}
El ejemplo anterior usa una variable contador para contar las repeticiones y se
imprime por la consola el nmero de cada repeticin: 1,2,3,4,5.

Variable acumulador
Es similar al contador. Se inicializa en cero y en cada repeticin se incrementa en
diferentes valores. El resultado final es que la variable acumula la suma de los
valores aadidos en cada repeticin.

import javax.swing.JOptionPane;
public class WhileCounterAcumulator {
public static void main(String[] args) {
int counter = 0;
int accumulator = 0;
while (counter < 5) {
counter = counter + 1;
accumulator
=
accumulator
+
Integer.parseInt(JOptionPane
.showInputDialog("Ingr
esar el " + counter + " nmero"));
}
JOptionPane.showMessageDialog(null, "La suma de los 5
nmeros es " + accumulator);
}
14

}
En este programa se le pide al usuario 5 nmeros y se le retorna su suma. Para
esto, se utiliza un contador para controlar la cantidad de veces que pedimos
nmeros al usuario y un acumulador para calcular la suma de los 5 nmeros
For
La Sintaxis empleada por el ciclo for es la siguiente:
for (valores de entrada ; condicin de terminacin ; iteracin por
ciclo)

Las tres partes del ciclo se encuentran separadas por ; (punto y coma)

La primer parte del ciclo especifica valores previo a su inicio.

La segunda parte indica la condicin de terminacin para el ciclo, la cual


esta directamente relacionada con los valores iniciales.

Finalmente, la ltima parte especifica como sern manipulados los valores


iniciales en cada iteracin del ciclo.

Cada parte del ciclo debe incluir al menos un elemento, a la cual es posible
agregar otros elementos a partir de una , (coma).

public class PruebaFor {


public static void main(String[] args) {
for(int i = 1, j = i + 10; i < 5; i++, j = i * 2) {
System.out.println("i= " + i + " j= " + j);
}
}
}

Se inicia este programa con la clsica definicin de class.

Se define el mtodo principal ( main ), el uso de corchetes ([]) al lado de la


Clase String indica un Arreglo de String's.

15

Se define el ciclo for con las siguientes caractersticas:

Dos variables iniciales (primitivos) i y j.

La condicin para terminar el ciclo es definida cuando el valor de la


variable i sea menor 5.

Cada iteracin de ciclo el valor de la variable i debe ser


incrementado en uno (++) y el valor de j debe ser igualado a dos veces
el valor de i.

Dentro del Ciclo se utiliza la Clase System.out.println para imprimir los


valores de las variables i y j en cada iteracin de ciclo.

Ao bisiesto

Para saber si un ao es bisiesto se puede aplicar una simple formula, la cual dice
que un ao es bisiesto si es divisible por cuatro, excepto los principios de ao (los
divisibles por 100), que para ser bisiestos deben de ser divisibles tambin por 400
Si tenemos que resolver esto con un lenguaje de programacin como Java solo
nos haran falta unas pequeas lneas de cdigo para llevar a cabo la definicin
anterior. Sera algo as como:
1 if ((anio % 4 == 0) && ((anio % 100 != 0) || (anio % 400 == 0))

C
1) Qu es c?
C es un lenguaje de programacin de propsito general, y es un lenguaje de
alto nivel que tiene ventajas como la legibilidad, la facilidad de mantenimiento y
16

portabilidad. Adems, C permite descender al nivel del hardware para


incrementar, si es necesario, la velocidad de rendimiento. Se necesita un
compilador de C para traducir los programas escritos en C a un Cdigo que la
maquina entienda. La portabilidad de estos programas se logra
recompilndolos con compiladores de C especficos para cada tipo de
Computadora.

2) Salida de datos por la pantalla:


Todo programa C consta de una o ms funciones. Obligatoriamente, debe
contener siempre la funcin main.
Ejemplo:

Void main ( )
{
}

Lo que debe escribirse entre las llaves son las instrucciones del programa. En el
ejemplo anterior no hay ninguna instruccin, luego el programa no realiza nada,
pero es un programa C vlido. La funcin main no tiene por qu ser la primera de
un programa, puede haber instrucciones anteriores. Las definiciones de las
funciones adicionales empleadas en el programa pueden preceder o seguir a
main.
Un programa C debe escribirse en minsculas, salvo los identificadores que
admiten maysculas, tal como se estudia en el apartado correspondiente de este
captulo.
Dependiendo de las instrucciones que vayan a ejecutarse en el programa, puede
ser necesario acceder a ciertas libreras de funciones (archivos cabecera) del
compilador; stas deben indicarse al principio del programa despus de la
expresin #include y delimitadas por ngulos (< >). Cuando se vayan a ejecutar
instrucciones de entrada y salida de datos, se debe incluir el archivo cabecera
stdio.h, comenzando el programa con la siguiente instruccin:
Ejemplo:
17

# include <studio.h>
Cuando se ejecuten otras instrucciones (se utilicen otras funciones) se debe incluir
la llamada a las libreras correspondientes. Con esto se consigue que el programa
al compilar slo utilice las libreras que necesita, con lo que se reduce el tiempo de
compilacin y el tamao del fichero ejecutable resultante.
Una funcin que se incluye dentro de la biblioteca stdio.h es printf, que tiene como
objetivo escribir en pantalla.
Veamos a continuacin un ejemplo de un programa C que escribe en pantalla la
frase: Este es mi primer programa C
Ejemplo:
# include <studio.h>
void main ( )
{
printf (Este es mi primer programa C);
}

Del anlisis del ejemplo anterior se puede extraer que:


1) Cada instruccin en C debe terminar con (;).
2) Las cadenas de caracteres (texto) en lenguaje C deben escribirse entre
comillas dobles.
3) Para escribir texto en varias lneas se utiliza el smbolo \n en cualquier parte
del texto a imprimir. Este smbolo equivale a un salto de lnea.
Ejemplo:

18

3) Imprimiendo datos de diferente tipo con printf


Si entre las comillas de printf aparece un smbolo %, se est indicando a la funcin
que deje de copiar caracteres y haga algo diferente, concretamente, que imprima
el contenido de una variable cuyo nombre se indica despus de las comillas
finales y la coma. Despus del smbolo % se agrega un carcter de formateo de
datos para indicar el tipo de formato en la salida.
Algunos caracteres de conversin de salida de datos son los siguientes:
1)
2)
3)
4)
5)
6)

d = decimal
o= octal
x= hexadecimal
c = de carcter
s = cadena
f =de punto flotante

4) Declaracin de variables
En C, a diferencia de otros lenguajes de programacin, todas las variables se
deben declarar antes de poder utilizarlas.
Una declaracin asocia un tipo de datos determinado a un grupo de variables.
Se deben declarar todas las variables antes de que aparezcan sentencias
ejecutables. (En Visual C ++ se permite mezclar la parte declarativa y
ejecutable del programa, aunque se debe cumplir la condicin de que toda
variable debe declararse antes de ser utilizada).
Una declaracin consiste en un tipo de datos, seguido de uno o ms nombres
de variables finalizando con un punto y coma (;).
Ejemplo:

19

5) Uso de if en C
En la programacin es esencial el manejo de bifurcaciones (si-entonces), en el
Lenguaje C se usa la sentencia if().
Modo de uso
if(condicion)
{
Acciones
}
Las acciones dentro de las llaves {} se ejecutarn siempre y cuando se
cumpla la condicin especificada entre los perntesis (). Tambin es posible
omitir las llaves si se fuera a ejecutar una sola accin.
La condicin puede ser cualquier expresin lgica como por ejemplo a<=b x!
=0 z+10<a&&b>0, etc.

Ejemplo:

2
3
4
5

1 Escriba un programa en Lenguaje C que solicite el ingreso de un


nmero entero e indique si es mayor que cero y si es par.
#include <stdio.h>
void main()
{
int a;
20

6
7
8
9
10
11
12 }

printf("Ingrese un numero: ");


scanf("%d",&a);
if(a>0)
printf("El nmero es mayor que cero\n");
if(a%2==0)
printf("El nmero ingresado nmero es par\n");

6) Lo esencial de la repeticin
La mayor parte de los programas incluyen repeticiones o ciclos. Un ciclo es un
grupo de instrucciones que la computadora ejecuta en forma repetida en tanto
se conserve verdadera alguna condicin de continuacin del ciclo. Hemos
analizado dos procedimientos de repeticin:
1. Repeticin controlada por contador.
2. Repeticin controlada por centinela.
La repeticin controlada por contador se denomina a veces repeticin definida
porque con anticipacin se sabe con exactitud cuntas veces se ejecutar el
ciclo. La repeticin controlada por centinela a veces se denomina repeticin
indefinida porque no se sabe con anticipacin cuantas veces se ejecutara el
ciclo.
En la repeticin controlada por contador se utiliza una variable de control para
contar el nmero de repeticiones. La variable de control es incrementada
(normalmente en 1) cada vez que se ejecuta el grupo de instrucciones dentro
de la repeticin. Cuando el valor de la variable de control indica que se ha
ejecutado el nmero correcto de repeticiones se termina el ciclo y la
computadora continua ejecutando el enunciado siguiente al de la estructura de
repeticin.
Repeticin controlada por contador La repeticin controlada por contador
requiere:
1. El nombre de una variable de control (o contador del ciclo).
2. El valor inicial de la variable de control.
3. El incremento (o decremento) con el cual, cada vez que se termine un ciclo
La variable de control ser modificada.
La condicin que compruebe la existencia del valor final de la variable de
control. Considere el siguiente programa que imprime los nmeros del 1 al
10:

21

7) La estructura de repeticin for

22

8) La estructura de repeticin do/while


Es similar a la estructura while. La diferencia es que la condicin de continuacin
del ciclo se testea despus de ejecutar el cuerpo del ciclo y por lo tanto el cuerpo
del ciclo se ejecutar a al menos una vez.
La forma del enunciado es:
do enunciado
While (condicin);

23

Cuando termina do/while la ejecucin continuar a con el enunciado que aparezca


despus de la palabra clave while. En el caso de que enunciado sea ms de una
sentencia se deben colocar entre llaves.
El programa a continuacin utiliza una estructura do/while para imprimir los
nmeros del 1 al 10.

4) Planteamiento del problema


Crear un programa diseado para que el usuario, por medio de su fecha de
nacimiento obtenga:
1 Fecha de Nacimiento
2 Fecha Actual
3 Signo Zodiacal
4 Nmero de Suerte segn el Signo Zodiacal
5 Color, de acuerdo a su Signo Zodiacal
6 Das Vividos
7 Su edad hasta el ao actual
8 Nmero de vueltas que dio la Tierra, desde su nacimiento"

5) Resolucin del problema


CODIGO EN VISUAL BASIC
Sub Macro1()
'
' Macro1 Macro
'
'
'
' Macro1 Macro
'
'signos zodiacales
24

Dim ao_nacimiento As Integer


Dim mes_nacimiento As Integer
Dim da_nacimiento As Integer
Dim thisDate As Date
Dim opcion As Date
Dim i As Integer
Dim dias_a As Double
Dim dias_ As Double
Dim dias_abs As Integer
Dim dias_v As Double
Dim aos_final As Double
Dim dias_vividos As Double
Dim dias_ac As Double
Dim meses_ac As Double
Dim tierra As Double
' en el programa se va a utilizar vbCr que hace la funcin de un \n al dar un salto
de linea
MsgBox ("Programa diseado para que el usuario, por medio de su fecha de
nacimiento obtenga:" & vbCr & "1.Fecha de Nacimiento" & vbCr & "2.Fecha Actual"
& vbCr & "3.Signo Zodiacal" & vbCr & "4.Nmero de Suerte segn el Signo
Zodiacal" & vbCr & "5.Color, de acuerdo a su Signo Zodiacal" & vbCr & "6.Das
Vividos" & vbCr & "7.Su edad hasta el ao actual" & vbCr & "8.Nmero de vueltas
que dio la Tierra, desde su nacimiento" & vbCr & "Por favor, siga las siguientes
instrucciones")
' al utilizar el this, podemos obtener da,mes y ao de la fecha actual del sistema
thisDate = Date
thisYear = Year(thisDate)
thisMonth = Month(thisDate)
thisDay = Day(thisDate)
da_nacimiento = InputBox("Por favor, ingrese el da de su nacimiento")
mes_nacimiento = InputBox("Por favor, ingrese el mes de su nacimiento")
ao_nacimiento = InputBox("Por favor, ingrese el ao de su nacimiento")
MsgBox ("La fecha de su nacimiento es:" & vbCr & "" & da_nacimiento & "/" &
mes_nacimiento & "/" & ao_nacimiento)
MsgBox ("La fecha actual es:" & vbCr & "" & thisDate)
opcion = mes_nacimiento
Select Case (opcion)
Case 1:
If da_nacimiento >= 20 Then
MsgBox ("Tu signo es:" & vbCr & " ACUARIO")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 7, 14, 20")
MsgBox ("Tu color es turquesa. Este color se asocia mucho con la calma y
la tranquilidad. ")
Else
MsgBox ("Tu signo es:" & vbCr & " CAPRICORNIO")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 3, 16, 25")
25

MsgBox ("Tu color es negro es el color que se asocia con los


capricornianos. Este color sirve como amuleto de proteccin.")
End If
Case 2:
If da_nacimiento >= 19 Then
MsgBox ("Tu signo es:" & vbCr & " PISCIS")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 5, 11, 19")
MsgBox ("Tu color es morado es el color de los piscis. Este es un color que
combate los miedos y los transtornos psquicos. ")
Else
MsgBox ("Tu signo es:" & vbCr & " ACUARIO")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 7, 14, 20")
MsgBox ("Tu color es turquesa. Este color se asocia mucho con la calma y
la tranquilidad. ")
End If
Case 3:
If da_nacimiento >= 21 Then
MsgBox ("Tu signo es:" & vbCr & " ARIES")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 7, 17, 21")
MsgBox ("Tu color es rojo. Este color simboliza el poder, la ambicin y el
amor")
Else
MsgBox ("Tu signo es:" & vbCr & " PISCIS")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 5, 11, 19")
MsgBox ("Tu color es morado es el color de los piscis. Este es un color que
combate los miedos y los transtornos psquicos. ")
End If
Case 4:
If da_nacimiento >= 21 Then
MsgBox ("Tu signo es:" & vbCr & " TAURO")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 4, 6, 11")
MsgBox ("Tu color es verde. Este color se asocia mucho a la paz y
estabilidad.")
Else
MsgBox ("Tu signo es:" & vbCr & " ARIES")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 7, 17, 21")
MsgBox ("Tu color es rojo. Este color simboliza el poder, la ambicin y el
amor")
End If
Case 5:
If da_nacimiento >= 21 Then
MsgBox ("Tu signo es:" & vbCr & " GEMINIS")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 3, 12, 18")
MsgBox ("Tu color es amarillo. Este color aporta mucha energa y vitalidad
ya que se asocia con la luz y la felicidad.")
Else
MsgBox ("Tu signo es:" & vbCr & " TAURO")
26

MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 4, 6, 11")
MsgBox ("Tu color es verde. Este color se asocia mucho a la paz y
estabilidad.")
End If
Case 6:
If da_nacimiento >= 21 Then
MsgBox ("Tu signo es:" & vbCr & " CANCER")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 5, 17, 30")
MsgBox ("Tu color es blanco es el color por excelencia de las personas del
signo de cncer. El blanco los ayuda mucho a la buena intuicin")
Else
MsgBox ("Tu signo es:" & vbCr & " GEMINIS")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 3, 12, 18")
MsgBox ("Tu color es amarillo. Este color aporta mucha energa y vitalidad
ya que se asocia con la luz y la felicidad.")
End If
Case 7:
If da_nacimiento >= 21 Then
MsgBox ("Tu signo es:" & vbCr & " LEO")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 1, 9,10, y sus
multiplos")
MsgBox ("Tu color es naranja har sentir menos inseguros a los leo. Este
color es muy positivo en tanto renueva las ilusiones de las personas y los hace
sentirse ms alegres, por lo tanto, ayuda a dejar atrs la depresin.")
Else
MsgBox ("Tu signo es:" & vbCr & " CANCER")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 5, 17, 30")
MsgBox ("Tu color es blanco es el color por excelencia de las personas del
signo de cncer. El blanco los ayuda mucho a la buena intuicin")
End If
Case 8:
If da_nacimiento >= 22 Then
MsgBox ("Tu signo es:" & vbCr & " VIRGO")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 10, 15, 27")
MsgBox ("Tu color es marrn. Este color ayuda mucho a la estabilidad
emocional.")
Else
MsgBox ("Tu signo es:" & vbCr & " LEO")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 1, 9,10, y sus
multiplos")
MsgBox ("Tu color es naranja har sentir menos inseguros a los leo. Este
color es muy positivo en tanto renueva las ilusiones de las personas y los hace
sentirse ms alegres, por lo tanto, ayuda a dejar atrs la depresin.")
End If
Case 9:
If da_nacimiento >= 23 Then
MsgBox ("Tu signo es:" & vbCr & " LIBRA")
27

MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 2, 8, 19")
MsgBox ("Tu color es rosa es el color por excelencia de los libra. Este color
apacigua y calma mucho los sentimientos")
Else
MsgBox ("Tu signo es:" & vbCr & " VIRGO")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 10, 15, 27")
MsgBox ("Tu color es marrn. Este color ayuda mucho a la estabilidad
emocional.")
End If
Case 10:
If da_nacimiento >= 23 Then
MsgBox ("Tu signo es:" & vbCr & " ESCORPION")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 4, 13, 21")
MsgBox ("Tu color es rojo. Los escorpiones son personas muy
apasionadas.")
Else
MsgBox ("Tu signo es:" & vbCr & " LIBRA")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 2, 8, 19")
MsgBox ("Tu color es rosa es el color por excelencia de los libra. Este color
apacigua y calma mucho los sentimientos")
End If
Case 11:
If da_nacimiento >= 23 Then
MsgBox ("Tu signo es:" & vbCr & " SAGITARIO")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 9, 14, 23")
MsgBox ("Tu color es azul. Este color ayuda a la tranquilidad del sagitario
que, por ser un signo de fuego, quiere estar en constante movimiento.")
Else
MsgBox ("Tu signo es:" & vbCr & " ESCORPION")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 4, 13, 21")
MsgBox ("Tu color es rojo. Los escorpiones son personas muy
apasionadas.")
End If
Case 12:
If da_nacimiento >= 21 Then
MsgBox ("Tu signo es:" & vbCr & " CAPRICORNIO")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 3, 16, 25")
MsgBox ("Tu color es negro es el color que se asocia con los
capricornianos. Este color sirve como amuleto de proteccin.")
Else
MsgBox ("Tu signo es:" & vbCr & " SAGITARIO")
MsgBox ("Tus nmeros de la suerte son :" & vbCr & " 9, 14, 23")
MsgBox ("Tu color es azul. Este color ayuda a la tranquilidad del sagitario
que, por ser un signo de fuego, quiere estar en constante movimiento.")
End If
End Select
dias_abs = 0
28

dias_a = 0
For i = 0 To thisMonth
meses_ac = 30 * thisMonth
dias_ac = meses_ac - thisDay
Next
For i = ao_nacimiento To thisYear
If (i Mod 4 = 0) And (i Mod 100) <> 0 Or (i Mod 400) = 0 Then
dias_abs = 366 + dias_abs
aos = dias_abs / 366
meses = aos * 12
dias = meses * 30
Else
dias_a = 365.25 + dias_a 'cada mes 30.4375
aos_a = dias_a / 365.25
meses_a = aos_a * 12
End If
dias_v = dias_a + dias
aos_final = dias_v / 365.25
tierra = aos_final
aos_final = Int(aos_final)
Next
dias_vividos = dias_v - dias_ac
MsgBox ("Los dias vividos son:" & vbCr & "" & dias_vividos & " das " & vbCr &
"Usted tiene:" & vbCr & aos_final & " aos ")
MsgBox ("La tierra dio:" & vbCr & "" & tierra & " vueltas " & vbCr & "desde que
usted naci, hasta el da de hoy")
End Sub
CODIGO EN C++
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
time_t tiempo = time(0);
struct tm *tlocal = localtime(&tiempo);
char output_m[1000],output_d[1000],output_a[1000],output[1000];
strftime(output_d,1000,"%d",tlocal); // proceso para sacar da, mes y ao por
separado
strftime(output_m,1000,"%m",tlocal);
strftime(output_a,1000,"%Y",tlocal); // Y para que el ao salga con sus cuatro
digitos
int
anio_nac,
mes_nac,
dia_nac,
i,
opcion,
dia_act,numero_d,numero_m,numero_a,
meses_ac,
dias_ac,
dias_abs,meses_a,anios, anios_final_a, dias_viv ;
29

float dias_a, dias_, dias_v,anio_ac, tierra, meses, dias,anios_a ,


anios_final;
printf ("Programa elaborado para que el usuario, por medio de su fecha
de nacimiento obtenga:\n 1.Fecha de Nacimiento\n 2.Fecha Actual\n 3.Signo
Zodiacal\n 4.Numero de Suerte segun el Signo Zodiacal\n 5.Color, de acuerdo a
su Signo Zodiacal\n 6.Dias Vividos\n 7.Su edad hasta el ao actual\n 8.Numero de
vueltas que dio la Tierra, desde su nacimiento\n 9.Por favor, siga las siguientes
instrucciones");
system ("PAUSE>null"); // se utiliza el null para que no salga el
mensaje de presione una tecla para salir
system("cls");
// cls para limpiar la pantalla
printf("Por favor ingrese el dia de su nacimiento.\n");
scanf("%d", &dia_nac);
printf("Por favor ingrese el mes de su nacimiento.\n");
scanf("%d", &mes_nac);
printf("Por favor ingrese el anio de su nacimiento.\n");
scanf("%d", &anio_nac);
system("cls");
printf("la fecha de nacimiento es: %d/%d/%d\n", dia_nac, mes_nac,
anio_nac);
strftime(output,1000,"La fecha actual es : %d/%m/%Y",tlocal);
printf("%s\n",output);
opcion = mes_nac;
switch (opcion)
{
case 1:
if (dia_nac >= 20)
{
printf("Tu signo es : ACUARIO\n");
printf("Tus numeros de la suerte son : 7, 14,
20\n");
printf("Tu color es turquesa. Este color se asocia
mucho con la calma y la tranquilidad.\n");
}
else
{
printf("Tu signo es : CAPRICORNIO\n");
printf("Tus numeros de la suerte son : 3, 16,
25\n");
printf("Tu color es negro es el color que se asocia
con los capricornianos. Este color sirve como amuleto de proteccin.\n");
}
break;
case 2:
if (dia_nac >= 19)
{
printf("Tu signo es : PISCIS\n");
30

printf("Tus numeros de la suerte son : 5, 11,


19\n");
printf("Tu color es morado es el color de los
piscis. Este es un color que combate los miedos y los transtornos psquicos.\n");
}
else
{
printf("Tu signo es : ACUARIO\n");
printf("Tus numeros de la suerte son : 7, 14,
20\n");
printf("Tu color es turquesa. Este color se asocia
mucho con la calma y la tranquilidad.\n");
}
break;
case 3:
if (dia_nac >= 21)
{
printf("Tu signo es : ARIES\n");
printf("Tus numeros de la suerte son : 7, 17,
21\n");
printf("Tu color es rojo. Este color simboliza el
poder, la ambicin y el amor.\n");
}
else
{
printf("Tu signo es : PISCIS\n");
printf("Tus numeros de la suerte son : 5, 11,
19\n");
printf("Tu color es morado es el color de los
piscis. Este es un color que combate los miedos y los transtornos psquicos.\n");
}
break;
case 4:
if (dia_nac >= 21)
{
printf("Tu signo es : TAURO\n");
printf("Tus numeros de la suerte son : 4, 6, 11\n");
printf("Tu color es verde. Este color se asocia
mucho a la paz y estabilidad.\n");
}
else
{
printf("Tu signo es : ARIES\n");
printf("Tus numeros de la suerte son : 7, 17,
21\n");
printf("Tu color es rojo. Este color simboliza el
poder, la ambicin y el amor.\n");
31

}
break;
case 5:
if (dia_nac >= 21)
{
printf("Tu signo es : GEMINIS\n");
printf("Tus numeros de la suerte son : 3, 12,
18\n");
printf("Tu color es amarillo. Este color aporta
mucha energa y vitalidad ya que se asocia con la luz y la felicidad.\n");
}
else
{
printf("Tu signo es : TAURO\n");
printf("Tus numeros de la suerte son : 4, 6, 11\n");
printf("Tu color es verde. Este color se asocia
mucho a la paz y estabilidad.\n");
}
break;
case 6:
if (dia_nac >= 21)
{
printf("Tu signo es : CANCER\n");
printf("Tus numeros de la suerte son : 5, 17,
30\n");
printf("Tu color es blanco es el color por
excelencia de las personas del signo de cncer. El blanco los ayuda mucho a la
buena intuicin.\n");
}
else
{
printf("Tu signo es : GEMINIS \n");
printf("Tus numeros de la suerte son : 3, 12,
18\n");
printf("Tu color es amarillo. Este color aporta
mucha energa y vitalidad ya que se asocia con la luz y la felicidad.\n");
}
break;
case 7:
if (dia_nac >= 21)
{
printf("Tu signo es : LEO \n");
printf("Tus numeros de la suerte son : 1, 9,10, y
sus multiplos\n");
printf("Tu color es naranja har sentir menos
inseguros a los leo. Este color es muy positivo en tanto renueva las ilusiones de
32

las personas y los hace sentirse ms alegres, por lo tanto, ayuda a dejar atrs la
depresin.\n");
}
else
{
printf("Tu signo es : CANCER\n");
printf("Tus numeros de la suerte son : 5, 17,
30\n");
printf("Tu color es blanco es el color por
excelencia de las personas del signo de cncer. El blanco los ayuda mucho a la
buena intuicin.\n");
}
break;
case 8:
if (dia_nac >= 22)
{
printf("Tu signo es : VIRGO \n");
printf("Tus numeros de la suerte son : 10, 15,
27 \n");
printf("Tu color es marrn. Este color ayuda
mucho a la estabilidad emocional.\n");
}
else
{
printf("Tu signo es :LEO\n");
printf("Tus numeros de la suerte son : 1, 9,10, y
sus multiplos \n");
printf("Tu color es naranja har sentir menos
inseguros a los leo. Este color es muy positivo en tanto renueva las ilusiones de
las personas y los hace sentirse ms alegres, por lo tanto, ayuda a dejar atrs la
depresin.\n");
}
break;
case 9:
if (dia_nac >= 23)
{
printf("Tu signo es : LIBRA\n");
printf("Tus numeros de la suerte son : 2, 8, 19\n");
printf("Tu color es rosa es el color por excelencia
de los libra. Este color apacigua y calma mucho los sentimientos\n");
}
else
{
printf("Tu signo es : VIRGO\n");
printf("Tus numeros de la suerte son : 10, 15,
27\n");
33

printf("Tu color es marrn. Este color ayuda


mucho a la estabilidad emocional.\n");
}
break;
case 10:
if (dia_nac >= 23)
{
printf("Tu signo es : ESCORPIO\n");
printf("Tus numeros de la suerte son : 4, 13,
21\n");
printf("Tu color es rojo. Los escorpiones son
personas muy apasionadas.\n");
}
else
{
printf("Tu signo es : LIBRA\n");
printf("Tus numeros de la suerte son : 2, 8, 19\n");
printf("Tu color es rosa es el color por excelencia
de los libra. Este color apacigua y calma mucho los sentimientos\n");
}
break;
case 11:
if (dia_nac >= 23)
{
printf("Tu signo es : SAGITARIO\n");
printf("Tus numeros de la suerte son : 9, 14,
23\n");
printf("Tu color es azul. Este color ayuda a la
tranquilidad del sagitario que, por ser un signo de fuego, quiere estar en constante
movimiento.\n");
}
else
{
printf("Tu signo es : ESCORPIO\n");
printf("Tus numeros de la suerte son : 4, 13,
21\n");
printf("Tu color es rojo. Los escorpiones son
personas muy apasionadas.\n");
}
break;
case 12:
if (dia_nac >= 21)
{
printf("Tu signo es : CAPRICORNIO\n");
printf("Tus numeros de la suerte son : 3, 16,
25\n");
34

printf("Tu color es negro es el color que se asocia


con los capricornianos. Este color sirve como amuleto de proteccin.\n");
}
else
{
printf("Tu signo es : SAGITARIO\n");
printf("Tus numeros de la suerte son : 9, 14,
23\n");
printf("Tu color es azul. Este color ayuda a la
tranquilidad del sagitario que, por ser un signo de fuego, quiere estar en constante
movimiento.\n");
}
break;
}
numero_d = atoi(output_d);//cambio de caracter a entero
numero_m = atoi(output_m);
numero_a = atoi(output_a);
dias_abs = 0;
dias_a = 0;
meses_ac = (30*numero_m);
dias_ac = meses_ac - numero_d;
for (i = anio_nac; i <= numero_a ; i++)
{
if ((i % 4 == 0) && ((i % 100 != 0) || (i % 400 == 0)))
// %(residuo) !=(diferente de) &&(Y) ||(Or)
{
dias_abs = 366 + dias_abs;
anios = (dias_abs / 366);
meses = anios * 12;
dias = meses * 30;
}
else
{
dias_a =365.25 + dias_a;
anios_a = (dias_a / 365.25);//30.4375 cada mes
meses_a = (anios_a * 12);
}
dias_v = dias_a + dias;
anios_final = dias_v / 365.25;
tierra = anios_final;
anios_final_a =(int)anios_final;
}
dias_viv = dias_v - dias_ac;
printf("Los dias vividos son:\n%d dias\n ", dias_viv);
35

printf("Usted tiene:\n%d years old\n " , anios_final_a );


printf("La tierra dio:\n %f vueltas desde que usted nacio, hasta el dia
de hoy", tierra );
system ("PAUSE>null");
return 0;
}
CODIGO EN JAVA
package horoscopo; //Creacion del paquete
import javax.swing.*; // importacion de librerias
import java.util.*;

/**
*
* @author Administrador
*/
public class Horoscopo { //clase principal
/**
* @param args the command line arguments
*/
@SuppressWarnings("empty-statement")
public static void main(String[] args) {// Declaracion de variables
Integer ao_nacimiento;
Integer mes_nacimiento;
Integer da_nacimiento;
Integer opcion;
Calendar fecha = new GregorianCalendar();//llamada al calendario
gregoriano(el mas utilizado)
int ao = fecha.get(Calendar.YEAR);//llamada al ao actual
int mes = fecha.get(Calendar.MONTH);//llamada al mes actual
int dia = fecha.get(Calendar.DAY_OF_MONTH);//llamada al dia actual
double meses_a;
double aos_a;
int i ;
double aos;
double aos_ac;
double meses;
double dias_ac = 0;
double dias_ = 0 ;
double dias_abs = 0;
36

double dias_v = 0;
double aos_final = 0;
double dias = 0;
double meses_ac;
double tierra = 0;
double dias_vividos;
//Codigoparadespliegue de mensaje en cuadrode texto.
JOptionPane.showMessageDialog(null,"Programa diseado para que el
usuario, por medio de su fecha de nacimiento obtenga:\n1.Fecha de
Nacimiento\n2.Fecha Actual\n3.Signo Zodiacal\n4.Nmero de Suerte segn
el Signo Zodiacal\n5.Color, de acuerdo a su Signo Zodiacal\n6.Das
Vividos\n7.Su edad hasta el ao actual\n8.Nmero de vueltas que dio la
Tierra, desde su nacimiento\nPor favor, siga las siguientes instrucciones");
//cuadro de texto donde se ingresan datos
da_nacimiento =Integer.parseInt(JOptionPane.showInputDialog("Por favor,
ingrese el da de su nacimiento"));
mes_nacimiento
=Integer.parseInt(JOptionPane.showInputDialog("Por
favor, ingrese el mes de su nacimiento"));
ao_nacimiento =Integer.parseInt(JOptionPane.showInputDialog("Por favor,
ingrese el ao de su nacimiento"));
JOptionPane.showMessageDialog(null,"La fecha de su nacimiento
es:"+da_nacimiento+"/"+mes_nacimiento+"/"+ao_nacimiento);
JOptionPane.showMessageDialog(null, "Fecha Actual: "+ dia + "/" +
(mes+1) + "/" + ao);
opcion = mes_nacimiento;
switch(opcion){//menu
case 1:
if (da_nacimiento >= 20){
JOptionPane.showMessageDialog(null,"Tu sigs:\n ACUARIO");// \n
(salto de linea) null(botones)
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son: \n 7, 14, 20");
JOptionPane.showMessageDialog(null,"Tu color es turquesa. Este
color se asocia mucho con la calma y la tranquilidad. ");
}else{
JOptionPane.showMessageDialog(null,"Tu signo
es:\nCAPRICORNIO");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 3, 16, 25");
JOptionPane.showMessageDialog(null,"Tu color es negro es el color
que se asocia con los capricornianos. Este color sirve como amuleto de
proteccin.");
}
break;//Final
37

case 2:
if (da_nacimiento >= 19){
JOptionPane.showMessageDialog(null,"Tu signo es:\n PISCIS");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 5, 11, 19");
JOptionPane.showMessageDialog(null,"Tu color es morado es el
color de los piscis. Este es un color que combate los miedos y los
transtornos psquicos. ");
}else{
JOptionPane.showMessageDialog(null,"Tu signo es:\n ACUARIO");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 7, 14, 20");
JOptionPane.showMessageDialog(null,"Tu color es turquesa. Este
color se asocia mucho con la calma y la tranquilidad. ");
}
break;
case 3:
if (da_nacimiento >= 21){
JOptionPane.showMessageDialog(null,"Tu signo es:\n ARIES");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 7, 17, 21");
JOptionPane.showMessageDialog(null,"Tu color es rojo. Este color
simboliza el poder, la ambicin y el amor");
}else{
JOptionPane.showMessageDialog(null,"Tu signo es:\n PISCIS");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 5, 11, 19");
JOptionPane.showMessageDialog(null,"Tu color es morado es el
color de los piscis. Este es un color que combate los miedos y los
transtornos psquicos. ");
}
break;
case 4:
if (da_nacimiento >= 21){
JOptionPane.showMessageDialog(null,"Tu signo es:\n TAURO");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 4, 6, 11");
JOptionPane.showMessageDialog(null,"Tu color es verde. Este color
se asocia mucho a la paz y estabilidad.");
}else{
JOptionPane.showMessageDialog(null,"Tu signo es: \n ARIES");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 7, 17, 21");
JOptionPane.showMessageDialog(null,"Tu color es rojo. Este color
simboliza el poder, la ambicin y el amor");
38

}
break;
case 5:
if (da_nacimiento >= 21){
JOptionPane.showMessageDialog(null,"Tu signo es:\n GEMINIS");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 3, 12, 18");
JOptionPane.showMessageDialog(null,"Tu color es amarillo. Este
color aporta mucha energa y vitalidad ya que se asocia con la luz y la
felicidad.");
}else{
JOptionPane.showMessageDialog(null,"Tu signo es:\n TAURO");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 4, 6, 11");
JOptionPane.showMessageDialog(null,"Tu color es verde. Este color
se asocia mucho a la paz y estabilidad.");
}
break;
case 6:
if (da_nacimiento >= 21){
JOptionPane.showMessageDialog(null,"Tu signo es:\n CANCER");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 5, 17, 30");
JOptionPane.showMessageDialog(null,"Tu color es blanco es el
color por excelencia de las personas del signo de cncer. El blanco los
ayuda mucho a la buena intuicin");
}else{
JOptionPane.showMessageDialog(null,"Tu signo es:\n GEMINIS");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 3, 12, 18");
JOptionPane.showMessageDialog(null,"Tu color es amarillo. Este
color aporta mucha energa y vitalidad ya que se asocia con la luz y la
felicidad.");
}
break;
case 7:
if (da_nacimiento >= 21){
JOptionPane.showMessageDialog(null,"Tu signo es:\n LEO");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 1, 9,10, y sus multiplos");
JOptionPane.showMessageDialog(null,"Tu color es naranja har
sentir menos inseguros a los leo. Este color es muy positivo en tanto
renueva las ilusiones de las personas y los hace sentirse ms alegres, por
lo tanto, ayuda a dejar atrs la depresin.");
39

}else{
JOptionPane.showMessageDialog(null,"Tu signo es:\n CANCER");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 5, 17, 30");
JOptionPane.showMessageDialog(null,"Tu color es blanco es el
color por excelencia de las personas del signo de cncer. El blanco los
ayuda mucho a la buena intuicin");
}
break;
case 8:
if (da_nacimiento >= 22){
JOptionPane.showMessageDialog(null,"Tu signo es:\n VIRGO");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 10, 15, 27");
JOptionPane.showMessageDialog(null,"Tu color es marrn. Este
color ayuda mucho a la estabilidad emocional.");
}else{
JOptionPane.showMessageDialog(null,"Tu signo es:\n LEO");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 1, 9,10, y sus multiplos");
JOptionPane.showMessageDialog(null,"Tu color es naranja har
sentir menos inseguros a los leo. Este color es muy positivo en tanto
renueva las ilusiones de las personas y los hace sentirse ms alegres, por
lo tanto, ayuda a dejar atrs la depresin.");
}
break;
case 9:
if (da_nacimiento >= 23){
JOptionPane.showMessageDialog(null,"Tu signo es:\n LIBRA");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 2, 8, 19");
JOptionPane.showMessageDialog(null,"Tu color es rosa es el color
por excelencia de los libra. Este color apacigua y calma mucho los
sentimientos");
}else{
JOptionPane.showMessageDialog(null,"Tu signo es:\n VIRGO");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 10, 15, 27");
JOptionPane.showMessageDialog(null,"Tu color es marrn. Este
color ayuda mucho a la estabilidad emocional.");
} break;
case 10:
if (da_nacimiento >= 23){
JOptionPane.showMessageDialog(null,"Tu signo es:\n
ESCORPION");
40

JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte


son :\n 4, 13, 21");
JOptionPane.showMessageDialog(null,"Tu color es rojo. Los
escorpiones son personas muy apasionadas.");
}else{
JOptionPane.showMessageDialog(null,"Tu signo es:\n LIBRA");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 2, 8, 19");
JOptionPane.showMessageDialog(null,"Tu color es rosa es el color
por excelencia de los libra. Este color apacigua y calma mucho los
sentimientos");
} break;
case 11:
if (da_nacimiento >= 23){
JOptionPane.showMessageDialog(null,"Tu signo es:\n SAGITARIO");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 9, 14, 23");
JOptionPane.showMessageDialog(null,"Tu color es azul. Este color
ayuda a la tranquilidad del sagitario que, por ser un signo de fuego, quiere
estar en constante movimiento.");
}else{
JOptionPane.showMessageDialog(null,"Tu signo es:\n
ESCORPION");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 4, 13, 21");
JOptionPane.showMessageDialog(null,"Tu color es rojo. Los
escorpiones son personas muy apasionadas.");
} break;
case 12:
if (da_nacimiento >= 21){
JOptionPane.showMessageDialog(null,"Tu signo es:\n
CAPRICORNIO");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 3, 16, 25");
JOptionPane.showMessageDialog(null,"Tu color es negro es el color
que se asocia con los capricornianos. Este color sirve como amuleto de
proteccin.");
}else{
JOptionPane.showMessageDialog(null,"Tu signo es:\n SAGITARIO");
JOptionPane.showMessageDialog(null,"Tus nmeros de la suerte
son :\n 9, 14, 23");
JOptionPane.showMessageDialog(null,"Tu color es azul. Este color
ayuda a la tranquilidad del sagitario que, por ser un signo de fuego, quiere
estar en constante movimiento.");
41

} break;
}
dias_abs = 0;
double dias_a = 0;
for (i=0;i<=mes;i++){
meses_ac = 30 * mes;
dias_ac = meses_ac - dia;
}
for (i=ao_nacimiento;i<=ao;i++){
if ((i%4==0)&&(i%100!=0)||(i%400==0)){// %(residuo) !=(diferente de)
&&(Y) ||(Or)
dias_abs = 366 + dias_abs;
aos = dias_abs / 366;
meses = aos * 12;
dias = meses * 30;
}else{
dias_a =(365.25 + dias_a);
aos_a = dias_a / 365.25;
meses_a = aos_a * 12;
dias_ = meses_a * 30.4375;
}
dias_v = dias_ + dias;
aos_final = dias_v / 365.25;
tierra = aos_final;
aos_final =(int)aos_final;
}
dias_vividos = dias_v - dias_ac;
JOptionPane.showMessageDialog(null,"Los
dias
vividos
son:
"+dias_vividos+" das Usted tiene: "+aos_final+" aos ");
JOptionPane.showMessageDialog(null,"La tierra dio:"+ tierra+" vueltas
desde que usted naci, hasta el da de hoy");
}
}

6) Conclusiones:
De acuerdo a la forma de trabajo, y lo visto en este documento acadmico,
podemos concluir que:

Se comprendi que los conceptos y trminos son necesarios para


solucionar los problemas y as tener la capacidad de elaborar algoritmos.

Se debe diferenciar los leguajes de los programas a utilizar.

Sintetizar el algoritmo para que se facilite la solucin de problemas.

42


Los estudiantes deben obtener las herramientas necesarias para la
adquisicin de nuevos conocimientos y de esta manera sean ellos quienes
resuelvan los problemas desde los ms sencillos hasta los ms complejos.

7) Recomendaciones:

Los estudiantes deben conocer los conceptos y trminos necesarios para la


solucin de problemas.

Cada estudiante debe diferenciar cada uno de los lenguajes para de esta
manera se facilite el aprendizaje.

Es importante sintetizar el algoritmo puesto que de esta manera se facilita la


solucin de los problemas planteados.

Proporcionar a los estudiantes las herramientas necesarias para la


adquisicin del nuevo conocimiento, ya que de esta manera los alumnos tendrn
la capacidad de dar solucin a las propuestas planteadas dentro del programa de
estudio

Bibliografa
(1) Tony, Zhang. (2001) Aprendiendo c en 24 horas. Mxico: DF
(2) https://www.java.com/es/download/faq/whatis_java.xml
(3) http://www.desarrolloweb.com/articulos/497.php
(4) https://es.wikibooks.org/wiki/Programaci%C3%B3n_en_Java/Variables
(5) https://es.wikipedia.org/wiki/Java_(lenguaje_de_programaci%C3%B3n)
(6)http://www.aprenderaprogramar.es/index.php?
option=com_content&view=article&id=481:if-else-if-else-if-java-estructura-oesquema-de-decision-condicional-ejemplos-de-uso-ejercicioscu00636b&catid=68:curso-aprender-programacion-java-desde-cero&Itemid=188
(7) https://es.answers.yahoo.com/question/index?qid=20080411124023AAafG9X
(8) https://www.google.es/?gws_rd=ssl#q=contadores+y+acumuladores+en+java
(9) http://javabasico.osmosislatina.com/curso/progavanza/for.htm
(10)
Http://msdn.microsoft.com/vb
(11)
www.vb-herlper.com
(12)
www.vbexplorer.com
(13)
www.cgvb.com
(14) www.programmersheaven.com/
(15) http://blog.espol.edu.ec/programando/sentencia-if-lenguaje-c/
43

(16)http://www.fing.edu.uy/tecnoinf/mvd/cursos/prinprog/material/teo/prinprogteorico04.pdf
(17)www.vb-herlper.com
(18)www.vbexplorer.com
(19) www.cgvb.com
(20) www.programmersheaven.com/
(21)
www.allexcel.com.ar/programacion%20VBA/programacion-VBA-paraExcel.html
(22) www.webandmacros.com/macro_excel_definicion.htm
(23) www.excel-avanzado.com/ejemplos-if-en-vba
Libro:
(1)Baltazar & Mariano Birnios, Creacion de Aplicaciones Multimedia con Visual
Basic, Editorial Mp Ediciones, primera edicion , Buenos Aires , 1998

44

You might also like