Buscar este blog

viernes, 13 de abril de 2012

13/04/2012

Con Carlos hemos visto:


Subprogramas:
    
Funciones   


Definición:
 Las funciones son bloques de código utilizados para dividir un programa en partes más pequeñas, cada una de las cuáles tendrá una tarea determinada.
                
Declaración en pseudocódigo:
Función nombre(nombre_parametro1:tipo,………):tipo de datos


Ejemplo:
//suma de dos números
Función     suma(num1:entero,num2:entero):entero
INICIO
         //variable
Resultado:entero;
Resultado ß num1+mun2
Devolver resultado
FIN


Declaración en c++:


tipo_función nombre_función (tipo y nombre de argumentos)
{
 bloque de sentencias
}


     tipo_función: puede ser de cualquier tipo de los que conocemos. El valor devuelto por la función será de este tipo. Por defecto, es decir, si no indicamos el tipo, la función devolverá un valor de tipo entero ( int ). Si no queremos que retorne ningún valor deberemos indicar el tipo vacío ( void ).

     nombre_función: es el nombre que le daremos a la función.

     tipo y nombre de argumentos: son los parámetros que recibe la función. Los argumentos de una función no son más que variables locales que reciben un valor. Este valor se lo enviamos al hacer la llamada a la función. Pueden existir funciones que no reciban argumentos.

     bloque de sentencias: es el conjunto de sentencias que serán ejecutadas cuando se realice la llamada a la función.

     Las funciones pueden ser llamadas desde la función main o desde otras funciones. Nunca se debe llamar a la función main desde otro lugar del programa. Por último recalcar que los argumentos de la función y sus variables locales se destruirán al finalizar la ejecución de la misma.


Procedimientos 


Declaración en pseudocódigo:
Procedimiento  nombre(nombre_parametro1,tipo,………):tipo de datos


Llamada:
Función      (siempre formara parte de una expresión)
Nombre(paametros1,paramatros2,…..)


Ejemplo:
         Programa prueba
         Inicio
                   Var aux:entero
                            A,b:entero
                   Escribe(“dime un numero”)
                   Leer(a)
                   Escribe(“dime un numero”)
                   Leer(a)
                   Auxßsuma(a,b) (se puede poner var o literales)
         fin


Después del recreo Manolo ha hecho su exposición sobre S.E.O (Search Engine Optimization).

JOSE ANGEL

12/04/2012


Solucion al problema del dia Anterior
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    //DECLARACIONES
    float escuela[3][5][2];
    int i,j,k,curso,asignatura,n_aprobados=0,n_suspensos=0;
    float n_media=0;
   
    //INTRODUCCION DE LAS NOTAS POR TECLADO
    for(i=0;i<3;i++)//i=curso
    {
       cout << "CURSO " << i << endl;
       for(j=0;j<5;j++)//alumno
       {
          cout << "   ALUMNO " << j << endl;
          for(k=0;k<2;k++)//nota
          {
              cout << "     Nota de la asignatura " << k << ": ";
              cin >> escuela[i][j][k];
          }
       }
    }
    //FIN INTRODUCCION DE LAS NOTAS POR TECLADO
   
    //CALCULAR LA NOTA MEDIA POR CURSO
    cout << endl << "CALCULO DE LA NOTA MEDIA" << endl;
    cout << "A que curso? [0,1,2] ";
    cin >> curso;
    for(j=0;j<5;j++)
    {
       for(k=0;k<2;k++)
       {
          n_media += escuela[curso][j][k];
       }
    }
    cout << "La nota media del curso " << curso << " es " << n_media/10 << endl;
    //FIN CALCULAR LA NOTA MEDIA POR CURSO  

    //CALCULAR EL NUMERO DE APROBADOS Y SUSPENSOS
    cout << endl << "CALCULO DE APROBADOS Y SUSPENSOS" << endl;
    cout << "De que curso? [0,1,2] ";
    cin >> curso;
    cout << "De que asignatura? [0,1] ";
    cin >> asignatura;
    for(j=0;j<5;j++)
    {
        if(escuela[curso][j][asignatura] < 5)
            n_suspensos++;
        else
            n_aprobados++;
    }
    cout << endl << "Hay " << n_suspensos << " suspensos y " << n_aprobados << " aprobados" << endl;
    //FIN CALCULAR EL NUMERO DE APROBADOS Y SUSPENSOS
    system("PAUSE");
    return EXIT_SUCCESS;

jueves, 12 de abril de 2012

Miercoles 11 de Abril.

Con Juan Carlos corregimos el ejercicio anterior de matrices.
Mandó el ejercicio siguiente:

Tengo guardado los datos de 3 cursos con 5 alumnos por curso y cada alumno tiene 2 asignaturas se pide:
   1º Pedir por teclado las notas que ha sacado cada alumno en cada asignatura y cada curso.
   2º Cual es la nota media de un determinado curso.
   3º Cuantos aprobados y suspensos hay en una determinada asignatura.
   4º Cual es de los 15 alumnos el de mejor nota media (Opcional).



Con Teo implementamos en Access el el ejercicio número 6:


EJERCICIO 6
Se desea informatizar la gestión de una tienda informática. La tienda dispone de una serie
de productos que se pueden vender a los clientes.
De cada producto informático se desea guardar el código, descripción, precio y número
de existencias. De cada cliente se desea guardar el código, nombre, apellidos, dirección y
número de teléfono.
Un cliente puede comprar varios productos en la tienda y un mismo producto puede ser
comprado por varios clientes. Cada vez que se compre un artículo quedará registrada la
compra en la base de datos junto con la fecha en la que se ha comprado el artículo.
La tienda tiene contactos con varios proveedores que son los que suministran los
productos. Un mismo producto puede ser suministrado por varios proveedores. De cada
proveedor se desea guardar el código, nombre, apellidos, dirección, provincia y número
de teléfono”.

Además estudiamos la forma de añadirle un listado de códigos postales ordenados por ciudades y poblaciones. Para ello hacemos la entidad relación de CIUDADES y POBLACIONES, el modelo relacional y lo incluimos en la base de datos anterior para que figure el código postal en la dirección del cliente y proveedor.


by JuanGa RR.

miércoles, 11 de abril de 2012

Titanic SUPER3D, mejor que el oficial!!!

Aquí os dejo el tráiler de la nueva versión del clásico Titanic que no sólo se limita a mostrarnos imágenes en 3D como hace la versión oficial, sino que actualiza contenidos y secuencias. Guau!!!


MARTES DIA 10 DE ABRIL DEL 2012

MARTES DIA 10 DE ABRIL DEL 2012

EJERCICIO DE ARRAYS

Declar una matriz,leido y guardado todos los campos, posteriormente cojemos dos vectores llamados filas y columnas, en el vector fila vamos a poner la suma de toda la fila y en vector columna la suma de todos los campos.

CODIGO:

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    //DECLARACIONES
    int matriz[4][5];
    int filas[] = {0,0,0,0};
    int columnas[] = {0,0,0,0,0};
    int i,j;
    //PIDO LOS DATOS POR TECLADO
    for(i=0;i<4;i++)
    {
       for(j=0;j<5;j++)
       {
          cout << "Introduce valor para (" << i << "," << j << "): ";
          cin >> matriz[i][j];
       }
    }
    //CALCULO EL VECTOR FILAS Y COLUMNAS
    for(i=0;i<4;i++)
    {
       for(j=0;j<5;j++)
       {
          filas[i] += matriz[i][j];
          if(i!=3)
             columnas[j] += matriz[i][j];
       }
    }
    for(i=0;i<4;i++)
       printf("%d\n",filas[i]);
       //o   cout << filas[i] << endl;
    printf("\n");
       //CON cout << endl;
    for(j=0;j<5;j++)
       printf("%d ",columnas[j]);
       // cout << filas[j] << " ";
       //CON cout << filas[j] << "\n\;
      //o   cout << filas[j] << endl;
    printf("\n");
      //CON cout << endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}
BASES DE DATOS:

EJERCICIO 3
A partir del siguiente enunciado diseñar el modelo entidad-relación.
“Se desea diseñar la base de datos de un Instituto. En la base de datos se desea guardar
los datos de los profesores del Instituto (DNI, nombre, dirección y teléfono). Los
profesores imparten módulos, y cada módulo tiene un código y un nombre. Cada alumno
está matriculado en uno o varios módulos. De cada alumno se desea guardar el nº de
expediente, nombre, apellidos y fecha de nacimiento. Los profesores pueden impartir
varios módulos, pero un módulo sólo puede ser impartido por un profesor. Cada curso
tiene un grupo de alumnos, uno de los cuales es el delegado del grupo”.

Se crea la base de datos en Access, junto con consultas e informes.
Se comenta la forma de programar las consultas en SQL, mediante el SELECT.