Bienvenidos a mi blog personal, aquí encontras todo sobre programación y gaspar es gay. function disabletext(e){ return false } function reEnable(){ return true } document.onselectstart=new Function ("return false") if (window.sidebar){ document.onmousedown=disabletext document.onclick=reEnable } Mi Blog personal

jueves, 30 de octubre de 2014

taller arreglos

Bienvenidos a mi blog personal, aquí encontraras todo sobre programación.


TALLERES ARREGLO--TALLERES ARREGLO--TALLERES ARREGLO

 TALLER ARREGLOS

1.Desarrollar un programa que me permita almacenar en dos vectores los 10 nombres y al frente las edades correspondientes a dichas personas.





2.Desarrollar  un arreglo tipo vector que permita almacenar la cédula de la persona y al frente ubica su salario final después de haber sacado sus deducciones así:
Prestaciones sociales





lunes, 27 de octubre de 2014

ALGORITMOS EPM


ALGORITMO EPM--ALGORITMO EPM--ALGORITMO EPM--ALGORITMO EPM  



ALGORITMOS EPM

Las epm requieren desarrollar un programa que permita leer nombre, direccion, tel, M3 de agua consumida y estrato del usurario.
*si el estrato es 1 o 2 el M³ tiene un valor de 1000 $.
*si es 3 o 4 el M³ tiene un valor de 2000 $.
*si el 5 o 6 tiene un valor de 3000 $ 


SOLUCIONES:


CASO:

cadena [10] nom 
real direc, tel, m3
caracter estra
inicio
    escriba "ingrese nombre"
    lea nom
    escriba "ingrese numero:"
    lea tel
    escriba "ingrese direccion:"
    lea direc
    escriba "ingrese estrato:"
    lea estra
    escriba "ingrese los metros cuadrados consumidos:"
    lea m3
    caso estra 
    '1','2': m3<-m3*1000
    '3','4': m3<-m3+2000
    '5','6': m3<-m3+3000
    fin caso
    escriba "su nombre es:",nom
    llamar nueva_linea
    escriba "su numero es:", tel
    llamar nueva_linea
    escriba "su estrato es :", estra
    llamar nueva_linea
    escriba "total a pagar:",m3
fin
    


SI ANIDADO:

cadena[10] nom
real direc,tel,m3,estra,tot

inicio
 escriba "ingrese nombre de usuario:" 
 lea nom
 escriba "ingrese direccion :"
 lea direc
 escriba "ingrese telefono:"
 lea tel
 escriba "ingrese estrato:"
 lea estra
 escriba "ingrese los metros cuadrados que consumio:"
 lea m3
 si estra = (1) o (2) entonces 
 tot <- m3 * 1000
   escriba "El total a pagar es:",tot
  sino si estra = (3) o (4) entonces 
  tot <- m3 * 2000
    escriba "El total a pagar es:",tot
   sino si estra = (5) o (6) entonces 
   tot<- m3 * 3000
     escriba "El total a pagar es:",tot
   fin si
  fin si
 fin si
 escriba "su nombre es:",nom
 llamar nueva_linea
 escriba "su numero es:", tel
 llamar nueva_linea
 escriba "su estrato es :", estra
 llamar nueva_linea
fin

HAGA MIENTRAS:

Cadena [20] nom, resp
Real m3, estra, tel, pago,direc

INICIO
Escriba "Desea continuear 'si/no' "
lea resp

mientras resp = "si" haga
escriba "Ingrese nombre:"
lea nom

escriba "Ingrese direccion:"
lea direc

escriba "Ingrese número:
lea tel

escriba "Ingrese metros cubicos usados"
lea m3

escriba "Ingrese estrato:"
lea estra

caso est 
'1', '2': pago<-m3*1000
'3', '4': pago<-m3*2000
'5', '6': pago<-m3*3000
fin caso

escriba "su nombre es:",nom
 llamar nueva_linea
 escriba "su numero es:", tel
 llamar nueva_linea
 escriba "su estrato es :", estra
 llamar nueva_linea
escriba "Tiene que pagar:",pago
llamar nueva_linea
escriba "Desea continuar:"
lea resp
fin mientras
FIN

HAGA PARA:

Cadena [20] nom
Real m3, estra, tel, pago, direc
entero k

INICIO

para k<- 1 hasta 10  haga
escriba "Ingrese nombre:"
lea nom

escriba "Ingrese direccion:"
lea direc

escriba "Ingrese número:
lea tel

escriba "Ingrese metros cubicos usados"
lea m3

escriba "Ingrese estrato:"
lea estra

caso estra 
'1', '2': pago<-m3*1000
'3', '4': pago<-m3*2000
'5', '6': pago<-m3*3000
fin caso

escriba "su nombre es:",nom
 llamar nueva_linea
 escriba "su numero es:", tel
 llamar nueva_linea
 escriba "su estrato es :", estra
 llamar nueva_linea
escriba "Tiene que pagar:",pago

fin para
FIN

HAGA HASTA:

Cadena [20] nom,resp
Real m3, estra, tel, tot, direc

INICIO
repita
Escriba "Desea continuear 'si/no' "
lea resp

escriba "Ingrese nombre:"
lea nom

escriba "Ingrese direccion:"
lea direc

escriba "Ingrese número:
lea tel

escriba "Ingrese metros cubicos usados"
lea m3

escriba "Ingrese estrato:"
lea estra

caso estra 
'1', '2': pago<-m3*1000
'3', '4': pago<-m3*2000
'5', '6': pago<-m3*3000
fin caso
hasta resp = no 
escriba "su nombre es:",nom
 llamar nueva_linea
 escriba "su numero es:", tel
 llamar nueva_linea
 escriba "su estrato es :", estra
 llamar nueva_linea
escriba "Tiene que pagar:",pago

FIN

VECTOR


arreglo [100] de entero pago
Cadena [20] nom
Real m3, estra, tel, direc
entero k

INICIO

para k<- 1 hasta 10  haga
escriba "Ingrese nombre:"
lea nom

escriba "Ingrese direccion:"
lea direc

escriba "Ingrese número:
lea tel

escriba "Ingrese metros cubicos usados"
lea m3

escriba "Ingrese estrato:"
lea estra
fin para
para k<- 1 hasta 10  haga
caso estra 
'1', '2': pago[k]<-m3*1000
'3', '4': pago[k]<-m3*2000
'5', '6': pago[k]<-m3*3000
fin caso
fin para
para k<- 1 hasta 10  haga
escriba "su nombre es:",nom
 llamar nueva_linea
 escriba "su numero es:", tel
 llamar nueva_linea
 escriba "su estrato es :", estra
 llamar nueva_linea
escriba "Tiene que pagar:",pago[k]
fin para

FIN







miércoles, 15 de octubre de 2014

Lenguaje de Programacion

LENGUAJE DE PROGRAMACIÓN--LENGUAJE DE PROGRAMACIÓN--LENGUAJE DE PROGRAMACIÓN--LENGUAJE DE PROGRAMACIÓN--LENGUAJE DE PROGRAMACIÓN--



LENGUAJE DE PROGRAMACIÓN


Un lenguaje de programación no es más que un sistema estructurado y diseñado principalmente para que las máquinas y computadoras se entiendan entre sí y con nosotros, los humanos. Contiene un conjunto de acciones consecutivas que el ordenador debe ejecutar.

   Estos lenguajes de programación usan diferentes normas o bases y se utilizan para controlar cómo se comporta una máquina (por ejemplo, un ordenador), también pueden usarse para crear programas informáticos, etc.



¿QUÉ TIPOS DE LENGUAJE DE PROGRAMACIÓN HAY PARA QUE SIRVEN?

Un ordenador no entiende un lenguaje como el que utilizan los humanos, sino que el lenguaje que entiende se llama “lenguaje binario” o “código binario” o “código máquina” que consiste en ceros y unos básicamente, es decir, una máquina sólo utiliza los números 0 y 1 para codificar cualquier acción a tomar. 

Lenguajes de Programación de Bajo Nivel:

que son aquellos utilizados fundamentalmente para controlar el hardware del ordenador y dependen totalmente de la máquina y no se pueden utilizar en otras máquinas. Están orientados exclusivamente para la máquina Estos lenguajes son los que ordenan a la máquina operaciones fundamentales para que pueda funcionar. Utiliza básicamente ceros, unos y abreviaturas de letras. Estos lenguajes también se llaman de código máquina. Son los más complicados,  pero solo los usan prácticamente los creadores de las máquinas. Con este tipo de lenguajes programan la asignación y liberación de memoria, el uso de punteros, el poder usar paso por valor y por referencia, la creación de tipos de datos, etc.

Algunos lenguajes de bajo nivel: 

* High Level Assembly 

* Netwide Assembler 
* Flat assembler 
* GNU Assembler 
* Microsoft Macro Assembler 
* RosASM 
* GoASM 
* A86 y A386 assemblers 
* Turbo Assembler 
* GNU toolchain 

 Lenguajes de Programación de Alto Nivel:

Estos lenguajes son más parecidos al lenguaje natural humano y no dependen de la máquina y sirven fundamentalmente para crear programas informáticos que solucionan diferentes problemas. Son los más usados por los programadores y por todo del mundo que realiza programas informáticos.
Estos son los principales lenguajes de alto nivel: 

* Ada 
* ALGOL 
* BASIC 
* C++ 
* C# 
* COBOL 
* Fortran 
* Java 
* Lisp 
* Modula-2 
* Pascal 
* Perl 
* PHP 
* PL/SQL 
* Python 


 Lenguaje de Programación de Medio Nivel:

Lenguaje de medio nivel es un lenguaje de programación informática como el lenguaje C, que se encuentran entre los lenguajes de alto nivel y los lenguajes de bajo nivel.

Suelen ser clasificados muchas veces de alto nivel, pero permiten ciertos manejos de bajo nivel. Son precisos para ciertas aplicaciones como la creación de sistemas operativos, ya que permiten un manejo abstracto (independiente de la máquina, a diferencia del ensamblador), pero sin perder mucho del poder y eficiencia que tienen los lenguajes de bajo nivel.


Una característica distintiva, por ejemplo, que convierte a C en un lenguaje de medio nivel y al Pascal en un lenguaje de alto nivel es que en el primero es posible manejar las letras como si fueran números (en Pascal no), y por el contrario en Pascal es posible concatenar las cadenas de caracteres con el operador suma y copiarlas con la asignación 

HISTORIA

Los primeros lenguajes de programación surgieron de la idea de Charles Babagge, la cual se le ocurrió a este hombre a mediados del siglo XIX. Era un profesor matemático de la universidad de Cambridge e inventor ingles, que la principio del siglo XIX predijo muchas de las teorías en que se basan los actuales ordenadores. Consistía en lo que él denominaba la maquina analítica, pero que por motivos técnicos 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 aquélla supuesta maquina de Babagge, en tarjetas perforadas. Como la maquina no llego nunca a construirse, los programas de Ada, lógicamente, tampoco llegaron a ejecutarse, pero si suponen un punto de partida de la programación, sobre todo si observamos que en cuanto se empezó a programar, los programadores utilizaron las técnicas diseñadas por Charles Babagge, y Ada, que consistían entre otras, en la programación 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 antaño, se adelantaron un siglo a su época, lo cual describe la inteligencia de la que se hallaban dotados.

En 1823 el gobierno Británico lo apoyo para crear el proyecto de una máquina de diferencias, un dispositivo mecánico para efectuar sumas repetidas. Pero Babagge se dedicó al proyecto de la máquina analítica, abandonando la máquina de diferencias, que se pudiera programar con tarjetas perforadas, gracias a la creación de Charles Jacquard (francés). Este hombre era un fabricante de tejidos y había creado un telar que podía reproducir automáticamente patrones de tejidos, leyendo la información codificada en patrones de agujeros perforados en tarjetas de papel rígido. Entonces Babagge intento crear la máquina que se pudiera programar con tarjetas perforadas para efectuar cualquier cálculo con una precisión de 20 dígitos. Pero la tecnología de la época no bastaba para hacer realidad sus ideas. 

-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ - 



jueves, 2 de octubre de 2014

ARREGLOS

Arreglos 

Es una Colección de datos del mismo tipo , que se almacenan en posiciones 
consecutivas de memoria y reciben un nombre común. 
Y para referirse a un determinado elemento tendremos de acceder usando un 
índice para especificar la posición que queremos extraer o modificar su valor. 
Los arreglos pueden ser : 
1-Unidimensionales : solo tiene una solo dimensión una fila y una columna 
2-Bidimensionales : tablas o matrices. 
3-Multidimensionales : de 3 o mas dimensiones. 


Vectores o Multidimencionales:

Es una forma de almacenar datos que permiten contener una serie de valores del mismo tipo, cada uno de los valores contenidos tiene una asociación que se usara para acceder . Esta posición o indice sera siempre un numero entero positivo


Declaración : 

arreglo[ <Dimensión> ] de <Tipo de datos> <Nombre de la variable> 
Dimensión : es el tamaño del arreglo , es un numero entero con el cual 
indicamos el numero de elementos que queremos guardar con el mismo tipo. 
Tipo de datos : es el tipo de datos que queremos que sea la colección , puede 
ser entero , real , cadena , carácter o un registro. 
Nombre de la variable : es el nombre con el cual vamos a ser referencia en el 
programa principal 



Ejemplo :
1)Ingresar 10 números a un arreglo de 10 elementos y luego presentar los 
números.

/* programa de ingreso de 10 números a un arreglo */
arreglo[10] de entero numero
entero I
inicio
para I <- 1 hasta 10 haga
Escriba "Ingrese el numero de la pos# ", I ,"....:"
lea numero[i]
fin para
para I <- 1 hasta 10 haga
Escriba numero[i]
llamar nueva_linea
fin para
fin 

2)Ingresar el nombre del empleado en un arreglo y el sueldo en otro arreglo , 
luego de ingresar los datos determinar el ihss , el total a pagar para cada 

uno de los empleados. 

Arreglo[5] de cadena[20] nombre
Arreglo[5] de real sueldo
real ihss,tp
entero I
Inicio
para I <- 1 hasta 5 haga
Escriba "Nombre del empleado [",i,"]..:"
lea nombre[i]
Escriba "Sueldo del empleado ...:"
lea sueldo[i]
fin para
para I <- 1 hasta 5 haga
si sueldo[i]>2400 Entonces
ihss<-84
sino
ihss<-0.035*sueldo[i]
fin si
tp<-sueldo[i]-ihss
escriba "Nombre ...:",nombre[i]
llamar nueva_lineaProgramación con LPP 
Pag. 52
Escriba "Sueldo ...:",sueldo[i]
llamar nueva_linea
Escriba "Ihss ...:",ihss
llamar nueva_linea
Escriba "Total pagar..:",tp
fin para

fin


Matrices o bidimencional:
Es un conjunto de variables (También llamado bloque) del mismo tipo que es considerado en matemáticas, y cuyo acceso se realiza por indices o lineas.


Declaración : 

arreglo[<Lineas>,<Columnas>] de <Tipo de datos> <Nombre de la variable> 



Ejemplos:


1)


arreglo [5,5] de real matriz
entero filas,columnas
inicio
escriba “ejemplo de como se llena e imprime una matriz de 5 X 5.”
llamar nueva_linea
escriba “ingrese los valores a ser ubicados en las filas de la matriz”
llamar nueva_linea
para filas<-1 hasta 5 haga
para columnas<-1 hasta 5 haga
escriba “digite el valor: “
lea matriz[filas,columnas]
llamar nueva_linea
fin para
fin para
escriba “imprimir la matriz creada.”
llamar nueva_linea
para filas<-1 hasta 5 haga
para columnas<-1 hasta 5 haga
escriba matriz[filas,columnas]
llamar nueva_linea
fin para
fin para
fin


2)

arreglo[5,4] de entero numero

entero L,C
inicio
         para L <- 1 hasta 5 haga
         para c <- 1 hasta 4 haga
              Escriba "Numero[", L , ",", C, "]"
              lea numero[L,C]
    Fin Para
Fin Para
     llamar Limpiar_pantalla
      para L <- 1 hasta 5 haga
      para c <- 1 hasta 4 haga
          Escriba numero[L,C]," "
    Fin Para
          llamar nueva_linea
     Fin Para

fin

martes, 23 de septiembre de 2014

ciclos

CICLOS--CICLOS--CICLOS--CICLOS--CICLOS--CICLOS

¿QUE ES UN CICLO?

Un ciclo o bucle , en programación, es una sentencia que se realiza repetidas veces a un trozo aislado de código, hasta que la condición asignada a dicho bucle deje de cumplirse.
Generalmente,un bucle es utilizado para hacer una acción repetida sin tener que escribir varias veces el mismo código, lo que ahorra tiempo, deja el código más claro y facilita su modificación en el futuro.
El bucle y los condicionales representan la base de la programación estructurada. Es una evolución del código ensamblador, donde la única posibilidad de iterar un código era establecer una sentencia jump.
Ejemplo:
int var=0;
 
 
      //código que puede ser sustituido por un bucle
      var = var + 2; //var igual a 2 (puede ser sustituido por var+=2)
      var = var + 2; //var igual a 4
      var = var + 2; //var igual a 6
      var = var + 2; //var igual a 8
      var = var + 2; //var igual a 10
      // fin de código  que puede ser sustituido por un bucle
 
    printf("el resultado es %i", var );

TIPOS DE CICLOS: 

  • Haga Para: 



El ciclo Para se utiliza generalmente para ejecutar un conjunto de instrucciones que se repiten un número de veces, establecido antes de ejecutar el ciclo. Variable : es de tipo entero Valor_inicial : este puede se un numero entero o una variable entera. Valor_final : este puede se un numero entero o una variable entera. 

Estructura:

para variable <- valor_inicial hasta valor_final haga 

 instrucciones 

 fin para



Ejemplo : presentar los números del 1 al 10 en la pantalla. 

Entero k,num
Inicio
Para k<- 1 hasta 10 haga
Escriba "ingrese el numero:"
lea num
Escriba "el numero es:",num
Fin para
Fin

Ejemplo2: 

realizar unn algoritmo Ingresando 10 nombres 

Entero k
Cadena[25] nombre
Inicio
para k<- 1 hasta 10 haga
Escriba “Ingresar el nombre”
Lea nombre
escriba "el nombre es:",nombre
Fin para
Fin
  • Haga Mientras:

El ciclo mientras se utiliza cuando se quiere ejecutar repetidamente un bloque
instrucciones basado en una condición, el ciclo se repite mientras la condición se

cumple. 
Estructura:


mientras condición haga 


 instrucciones 


 fin mientras 

Ejemplo: 

sobre el ciclo Mientras usando un contador 
Ingresar 10 nombres 

Entero contador
Cadena[25] nombre
Inicio
Contador<- 0
Mientras contador<10 haga
Escriba “Ingresar el nombre”
Lea nombre
Contador<- contador + 1
Fin mientras
Fin


Ejemplo 2: presentar los números del 1 al 10 en la pantalla. 

Entero con,num
Inicio
con<-0
Mientras con < 10 haga
Escriba "ingrese el numero:"
lea num
con<-con+1
Escriba "el numero es:",num
Fin mientras
Fin

En este programa introducimos el concepto de contador , que es una variable 

que se incrementa su valor en 1 y de esta manera contamos cuantos nombres

Ejemplo3: 

Ingresar el nombre del alumno, la nota  , al 
final presentar el numero de aprobados y reprobados.
caracter resp
real nota
entero ca,cr
cadena[25] nombre
inicio
ca <-0
cr<- 0
contador<-0
Mientras  Escriba "ingresar el nombre del alumno "
lea nombre
Escriba "ingresar la nota del alumno "
lea nota
contador <-contador+1
si nota >= 60 entonces
ca<- ca+1
Escriba "el estudiante aprobó y su nota es:",nota
sino
cr cr+1
Escriba" el estudiante pierde y su nota es:",nota

fin si
Fin mientras
Escriba " los estudiantes que ganan son:",ca
Escriba " pierden:"cr
fin





Ciclo Repita:
El ciclo repita es lo contrario al ciclo mientras, en éste la ejecución se lleva a 


    cabo hasta que se cumple la condición impuesta. 



      La condición no se verifica al inicio como el en ciclo mientras se verifica al final .


      Estructura:
      Repita 
       Instrucciones 

       Hasta condición 

      Ejemplo: 

      Ingresar el nombre del alumno, la nota , luego preguntar si desea continuar , al 
      final presentar el numero de aprobados y reprobados. 
      caracter resp
      real nota
      entero ca,cr
      cadena[25] nombre
      inicio
      ca <-0
      cr<- 0
      repita
      Escriba "ingresar el nombre del alumno "
      lea nombre
      Escriba "ingresar la nota del alumno "
      lea nota
      si nota >= 60 entonces
      ca<- ca+1
      sino
      cr cr+1

      fin si
      escriba "desea continuar s/n"
      les resp
      hasta (resp='n') o (resp= '')
      escriba "Aprobados :",ca
      escriba "Reprobados:",cr
      fin



      Ejemplo 2: presentar los números del 1 al 10 en la pantalla. 

      Entero con,num
      Inicio
      con<-0
      repita
      Escriba "ingrese el numero:"
      lea num
      llamar nueva_linea
      Escriba "el numero es:",num
      llamar nueva_linea
      llamar nueva_linea
      con<-con+1
      hasta con = 10 
      Fin

      Ejemplo 3: 
      usando un contador  ingresar 10 nombres 

      Entero contador
      Cadena[25] nombre
      Inicio
      Contador<-0
      repita
      Escriba "Ingresar el nombre"
      lea nombreq
      llamar nueva_linea
      escriba nombre
      llamar nueva_linea
      Contador<- contador + 1
      hasta contador = 10 
      Fin