lunes, 28 de febrero de 2011

mayor de edad / vector

Otro tipo de ejercicio son los de aplicar condiciones es decir los de 'if '.Para familiarizarnos primeros hicimos un ejercicio en el que teníamos que introducir un número y si era mayor que cero nos escribía que el número era positivo y si era menor que cero era negativo.
A continuación explicaré como es el procedimiento a seguir con un ejercicio mas concreto.
El ejercicio consiste en que nos pregunte nuestro nombre , después la edad y aquí es donde entraría lo nuevo .Si nuestra edad, que es una variable del tipo integer, es 18 o mayor que 18 nos tiene que escribir 'Eres mayor de edad' y sin nuestra edad es menor de 18 que nos diga por ejemplo ,nombre no eres mayor de edad. Esto se hace con el siguiente esquema:
if num>=18 then
---begin
------writeln(nombre, 'eres mayor de edad')
---end

else

---begin
---end;
Si cumple la primera condición y nuestra edad es 18 o mayor de 18 entonces que es 'then' que empiece un programa dentro del general que nos diga lo anteriormente nombrado. El primer end no lleva ni . ni ; porque aun no se ha acabado la condición y Si en caso contrario no la cumple ponemos 'else' y vuelven a empezar otras líneas de programa respecto a esto.
Ahora el end si que lleva ; porque ya se acaba la condición.

para poner condiciones empleamos la función if ... else


en primer lugar ponemos la condición , en este cado pretendemos saber si el sujeto es mayor de edad , para ello , tras poner todos los datos que ponemos en todos los ejercicios ponemos la condición
if L>=18 then (L es la variable que hemos declarado previamente )
entonces si el sujeto nos pone 18 quiere decir que se cumple la condición , por tanto mediante writeln ('eres mayor de edad ') nos indicará nuestra mayoría de edad
y tras esta indicación cerramos la condición con end .
si no se cumple la condición comenzamos de nuevo con else y posteriormente begin y lo que supone el no cumplir la condición previa , en este caso
writeln ('eres menor de edad ') para que salga en un color determinado , antes de el writeln ponemos textcolor (color que queramos) y tras lo que ha supuesto en lo cumplir la condición cerramos esta sección con end y posteriormente ponemos un end final para finalizar todo el programa .


El ejercicio de vectores trata de calcular la media de un vector formado por 5 elementos asi como la suma de sus elementos.
Las variables aquí seran vec y para no tener que estar poniendo vec1, vec2, vec3, vec4... directamente ponemos vec array [1...5] of real.Esto lo que hace es declarar las variables vec entre 1 y 5 sin necesidad de escribirlas todas. Añadimos of real puesto que lo elementos del vector pueden ser números reales.
Empezamos como siempre y hacemos que salga por pantalla ('Introduzca el 1º vector') con readln(vec[1]) y asi sucesivamente con todos los demás elementos.

También hemos declarado dos variables mas n1 y n2, una para la suma de los componentes del vector y otra para la media de estos.Siguen siendo del tipo real.
A la hora escribir la función que suma todos los elementos escribiremos n1:=vec[1]+vec[2]+vec[3]...
Y para la media n2: n1/5
Como ya aprendimos como se hace para que el resultado salga en un determinado color,también lo aplicamos al resultado de la suma y de la media.

para indicar que hay 5 componentes del vector utilizamos : array [1...5] of real
y también son variables x , y que son reales .
posteriormente pedimos los 5 componentes del vector .
para declarar la variable escribimos readln (vector [1]) , dentro de los corchetes el número de vector que hayamos pedido .
tras pedir los 5 componentes realizamos la suma de este modo : ni :=vector [1]+vector [2]+vector[3]+vector[4]+vector[5]

y para realizar la media utilizamos ni que ya lo hemos calculado previamente de este modo : ni/2;
de este modo tenemos la suma de los 5 componentes y la media de esto



martes, 22 de febrero de 2011

concatenar

para que un texto se escriba en un lugar determinado de la pantalla ponemos gotooxy(el lugar donde queramos que aparezca )es muy importante que tras cada indicación finalicemos con un punto y coma.Este ejercicio debemos realizar la suma de dos textos previamente introducidos consiste en declarar tres variables del tipo ansistring a las que hemos llamado A, B y C y que son textos. Debemos hacer que nos escriba por pantalla , writeln, 'Introduzca el primer texto' y a continuación readln(A) que es la primera variables.Lo mismo hacemos con el segundo texto, variable B, y seguidamente con la variable C que es la suma de los dos textos introducidos C=A+B y lo nuevo es que después de esto nuestro resultado de la suma de los dos textos vaya a un lugar determinado.
Esto se hace con la función gotoxy y entre paréntesis las coordenadas x e y a las que queremos que vaya. Por ejemplo gotoxy(15,9) que es como está hecho en el ejercicio.


domingo, 20 de febrero de 2011

cadenas

Para realizar este ejercicio en primer lugar tenemos que declarar una variable : ansistring ; ( porque se trata de un nombre )
pedimos el nombre por pantalla writeln ('introduce tu nombre completo ') ;
posteriormente readln (variable ) ;
para que cuente las letras qe tiene el nombre que se ha introducido por pantalla utilizamos la función length del siguiente modo ; writeln (length (variable) , 'letras ');
Este ejercicio va a consistir en escribir nuestro nombre completo y que mediante la función lenght y entre paréntesis nuestra variable, es decir , nuestro nombre nos cuenta cuantas letras tiene este.
Otra función nueva que hasta ahora no habíamos vistos es la de textcolor que hace que lo que escribamos o lo que salga al hacer el programa ,lo ponga en un determinado color.
La manera de proceder para esto es escribir textcolor y entre paréntesis el nombre del color en inglés o bien el número al que está atribuido.
En este ejercicio hemos hecho que nuestro nombre aparezca en amarrillo que se pone así : textcolor(yellow);

martes, 15 de febrero de 2011

azar

para asignar valores que pertenecen a un intervalo utilizamos random ( intervalo de 0 hasta el número anterior que escribas ) ej : random (100) escoge número del intervalo entre el 0 y el 99
Ricardo en este ejercicio nos pedía que el programa estrajera 6 números de la lotería y para ello debía estar en un intervalo entre 1 y 50 , por ello hacemos lo siguiente random (49)+1

Para estos ejercicios la nueva función a utilizar ha sido la función random que da numeros aleatorios dentro de un intervalo ,es decir numeros al azar. Primero hemos practicado con un ejercicio más sencillos que nos daba dos números al azar entre o y 100.

Más tarde lo hemos ampliado para que nos extraiga 6 numeros al azar entre el 1 y el 49 como si fuera la primitiva.

Para este ejercicio hemos declarado 6 variables del tipo integer correspondientes a cada uno de los numeros al azar.Después de preguntarnos nuestro nombre y darnos la bienvenida al sorteo de la loteria primitiva ,cosas que ya hemos aprendido y explicado, ponemos la función randomize ,que genera numeros aleatorios y bajo de esta vamos escribiendo cada variable de esta forma :
num1:random(49)+1;
.
.
.
Otro nueva función que hemos aplicado ha sido 'delay' que genera un intervalo de tiempo, por ejemplo t, que nosotros hayamos declarado como constante .A la hora de declarar como constante t ponemos t=1ooo en lugar de t=1 que sería un segundo porque el programa pascal trabaja en milisegundos.
De esta manera se espera un segundo entre numero y numero.


en un inicio como no sabía asignar valores estre 1 y 50 puse como intervalo 50 , pero no era correcto por lo que he indicado antes .



sábado, 12 de febrero de 2011

REALES

Para realizar operaciones no es necesario hacerlas a parte y luego nombrar esa variable , sino que también se puede realizar la operación en el mismo escrito , tras la última comilla , poniedo una coma y a continuación la operación deseada .
para que el texto escriba algún resultado en color hemos de poner writecolor (color )es tan válido poner el nombre del color en inglés , como un número pues lo reprenta igual .
para que los datos salgan pausadamente tenemos que declarar la variable t= 1000
un vez declarado , tras cada indicadión ponemos : delay (t) la t es mil porque el delay trabaja con milisegundos.
este metodo lo hemos utilizado para extraer los número de la lotería .

Para dejar separación entre dos líneas lo que podemos hacer es escribir writeln () sin nada escrito dentro del paréntesis , de este modo queda más ordenado .




En este ejercicio vamos a pasar a las variables del tipo real, aunque para el ejercicio sigue haciendo falta variables del tipo integer. Consiste en escribir un número real y a partir de este ir dando ese mismo número con su valor original , con formato de unos tres decimales como ya hemos explicado en el área del círculo (N :0:3) ,redondeado que se hace con la función ‘round’ y entre paréntesis la variable que debe redondear y por último lo que hacía era truncar el número real con la función ‘trunc’
La segunda parte del ejercicio consistía en volver a introducir un número real, después un número entero y seguidamente otro número entero.
A partir de este momento pasamos a realizar una serie de operaciones.
-La 1ª debe sumar los dos números reales y volver a dar el resultado con dos decimales. La función es la suma: N +A
-La 2ª realizaba el producto de los dos números reales otra vez expresados cons dos decimales. La función producto: N*A
-La 3ª hacía la división entre los dos reales. La función división : N/A
-La 4ª la diferencia de los dos números enteros .La función de restar T-Q
-La 5ª la división de los dos enteros.T/Q
-La 6º vuelve a ser la división entre los dos números enteros pero esta vez de otra manera ,con la función ‘div’
-La 7ª calcula el resto de la división anterior con la función ‘mod’
-La 8ª realiza el opuesto de uno de los números enteros.
Otra matiz que hemos introducido nuevo en este ejercicio ha sido la función delay, que hace que entre sentencia y sentencia que vaya apareciendo en pantalla haya unos instantes de espera.
Para ello donde queramos que se espere escribimos la función delay y entre paréntesis t de tiempo que previamente ya hemos declarado con como constante t =1000 porque el programa trabaja en milisegundos.


jueves, 10 de febrero de 2011

área círculo /saludo 2



Otro ejercicio ha sido que nos preguntara nuestro nombre ,nosotros lo pusieramos y el ordenador nos dijera : 'Hola (nuestro nombre) , ¿Qué tal?'
Para ello la variable en este caso es nombre y es del tipo ansistring ,es decir ,reconoce textos.
para operan con nombres es necesario emplear en la variable : ansistring , con ello no permitirá preguntar a una persona su nombre ... y que el programa lo reconozca como tal .








puesto que estamos trabajando con números reales es necesario indicar el número de decimales que queremos emplear , por ello , en este caso cuando escribimos por ejemplo : writeln ('el resultado del área es : ' , a : 0 : 3 ) ponemos tras la última comilla , una coma

a y cuando nombramos el resultado , dos puntos 0 dos puntos y el número de decimales que queramos .



En este programa tenemos que calcular el área y la longitud de una circunferencia para ello ,tras escribir la plantilla que seguimos en todos los ejercicios , debemos insertar un constante porque forma parte de la fórmula , en este caso pi*r*r .escribimos la constante entre la biblioteca crt y var del siguiente modo : const pi=3.1415926 . De esta manera no hará falta volver a escribir el número con decimales , es decir , con poner pi ya hace referencia a este número .

Posteriormente declaramos tres variables : rd , área , longitud : real ;

Después de iniciar el programa con begin , pedimos el radio de la circunferencia en cuestión del siguiente modo : writeln (‘ingrese el radio de la circunferencia: ’);Luego , para que reconozca la variable , tenemos que poner readl (el número insertado ) ; e indicamos la fórmula que deseamos calcular area:= pi*rd*rd;

miércoles, 9 de febrero de 2011

rectángulo

Declaramos las variables de la base(b) , la altura(h) y el area(area) como del tipo integer y todo lo demás igual que siempre,solo que en vez de suma ahora en la funcion area pondremos(area:=b*h) que es la forma de hacer el área de un rectángulo.


cuando compilamos y no detecta ningún tipo de error nos lo indica con este tipo de informe y a partir de aqui pulsando en ctrl f9 podemos comprobar nuestro trabajo





martes, 8 de febrero de 2011

suma

para guardar el proyecto : alt f9 > cliqueo en los puntos suspensivos hasta encontrar la carpeta > una vez seleccionada la caerpeta le cambiamos el nombre , en mi caso los he nombrado por número de ejercicio . .

Este ejercicio consiste en sumar dos números enteros los cuales declaramos como variables al poner debajo de uses var y de ahí atribuirles nosotros una letra cualquiera. También hay que declarar como variable el resultado de la suma de los dos números enteros.

Después de hacer esto hay que poner ":" y el tipo de variable que es. En este ejercicio las variables son números enteros por tanto el tipo de variable es 'integer'.
Tras poner begin, clrscr... escribimos por pantalla ('Introduzca el primer numero entero') y después readln(n1) para que tenga la variable y la reconozca y pase después de nosotros ponerla , a la siguiente línea.
Así hacemos lo mismo con la otra variable y antes de escribir el resultado de la suma, ponemos la función suma rs:=n1+n2 y a continuación el mismo procedimiento para que escriba ('El resultado de la suma es : ') pero con un matiz ,ya que al lado de lo que vaya a escribir debemos volver a poner la variable rs.





lunes, 7 de febrero de 2011



E



viernes, 4 de febrero de 2011

Introducción / saludo

Vamos a comenzar un nuevo proyecto : PROGRAMACIÓN , es decir escribir al ordenador mediante un lenguaje de programación , el código fuente de un software , que indca al programa informático qué debe hacer y como .
nuestro primer ejercicio fue realizar una suma , de tal manera , que el programa nos pide los números que va a sumar y por último nos trasmite el resultado de la suma .
Para comenzar con el programa, Ricardo nos dijo que nos ejecutáramos el programa en nuestro pen para tenerlo , pero yo he tenido varios problemas pues tras el primer ejercicio cuando me dirigí a compilarlo se reflejaban varios problemas , entre los que aparecía un problema de biblioteca , tras ver este fallo decidí volver a ejecutarlo pero no obtuve los resultados esperados , por lo que comencé a trabajar el programa en la red .
primero abríamos la carpeta donde está el programa >file > new : sale inmediatamente una pantalla de color azul .
comenzamos el programa con "program _____"
posteriormente hacemos mención a la biblioteca "uses crt ; "
después nombramos las variables , y éstas dependen de lo que queramos calcular o de aquello con lo que trabajemos , pues si se trata de nombres ... usamos "ansistring " , si trabajamos con números enteros usamos "integer "
en este caso voy a explicar el caso de la suma :
después de nombrar las variables , comienza con "begin "

(Ricardo nos recomendó que pusiéramos el begin y el end no en la parte central , sino en el margen y el contenido de las indicaciones más centradas , para ver con claridad el comienzo y fin del programa)
posteriormente "clrscr ;"que sirve para borrar pantalla .Lo que he indicado hasta el momneto exceptuando las variables será utilizado en todas las programaciones .
cuando queremos preguntar algo al receptor lo indicamos con writeln ('______') en este caso pedimos un número entero , que previamente hemos indicado con "integer" y declaramos la variable mediante readln(var1);
una vez pedidos los dos números que se someterán la suma , hacemos una relación entre variables , en este caso la operación que queremos que realice var:=var1+var2 , entonces cuando queremos que nos diga el resultado ... se hace del siguiente modo : wrtiteln('___________' , var );

(para que no salga muy junto el texto del resultado el espacio se realiza antes de cerrar comillas )

(es muy importante finalizar cada petición con ; menos begin y var que no llevan nada detrás y menos el end que finaliza con un punto )

cuando ya hemos acabado escribimos readkey ; y poteriormente end.



éste es el primer ejemplo guiado por Ricardo , en el que nos indicó los pasos para que el programa nos dijera algo , mediante writeln ('______________')