miércoles, 25 de noviembre de 2015

ESTRUCTURAS Y CLASES EN C++

011 ESTRUCTURAS Y CLASES EN C / C++
Ing, Honoria Reyes Macedo

Las estructuras se utilizan para organizar los datos en la memoria de una computadora.
Existen desde estructuras básicas: las variables, apuntadores y constantes, arreglos: vectores y matrices, hasta estructuras compuestas: struct, unión y clases.

Las estructuras son un grupo de datos bajo un mismo nombre, estos datos pueden ser de diferente tipo y longitud.

struct: Agrupa los datos en un solo registro.
-       Pueden ser anónimas o con nombre.     
-       Pueden heredar por extensión
-       Pueden heredar por composición o agregación  (estructuras anidadas)
-      Los miembros por default son publico

class:    Contiene las definiciones de las propiedades y el comportamiento de un                     tipo de objeto

              - Posee las caracteristicas de abstracción, polimorfismo, encapsulamiento y herencia.
              -  Pueden heredar por extensión.
              -  Pueden heredar por composición.
              -  Los miembros por default son privados.
              - Esta compuesto por atributos(estado) y metodos(comportamiento).

a) Ejemplo de struct:


b) Ejemplo de clase








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

ANEXO I: Ejemplo: 

a) Hacer una clase de persona (archivo en c++)


#include <iostream>
#include <string.h>
using namespace std;
class persona{
  private:
    string nombre;
    string apPaterno;
    string apMaterno;
    int edad;
    string rfc;
  protected:
    string saludo;  /*Las clases derivadas por extension si la pueden manipular*/
  public:
    persona(){};
    ~persona(){};
    void setNombre(string nombre1);
    string getNombre();
    void setApPaterno(string apPat1);
    string getApPaterno();
    void setApMaterno(string apMat1);
    string getApMaterno();
    void setEdad(int edad1);
    int getEdad();
    void setRFC(string nombre1);
    string getRFC();
};

 -  Agregar al final la IMPLEMENTACION de los prototipos declarados


   

 -  Agregar al final el metodo main(), probar o ejecutar:





b) EN UN NUEVO ARCHIVO DE C++: 

       - Copiar todo lo del archivo anterior menos el metodo main()

        -  Agregar al final  la siguiente clase de estudiante:




    -  Agregar al final del nuevo archivo la siguiente clase de docente:



    -  Agregar al final el metodo main(). 
                    No capturar las lineas tachadas porque carrera es un atributo privado

























--------------------------0--0------------------------------------
-----------------------000--000---------------------------------




miércoles, 4 de noviembre de 2015

lunes, 26 de octubre de 2015

FUNCIONES Y PROCEDIMIENTOS EN C++

009 FUNCIONES Y PROCEDIMIENTOS
Ing. Honoria Reyes Macedo

INTRODUCCION
- Se utilizan para dividir grandes programas en varios segmentos mas pequeños (en procedimientos o funciones) que cumplen una tarea especifica y pueden retornar un valor.
- Se pueden utilizar mas de una vez-
- Los procedimientos no retornan valor alguno
- Las funciomes si regresan algun tipo de valor
- Estas funciones o procedimientos pueden recibir parámetros o argumentos que modifican su comportamiento.
- El paso de parámetros puede ser por valor o por referencia
- Los parámetros pasados por valor no reflejaran modificaciones en el  parámetro original

  Y los parámetros pasados por referencia si podrán ser modificados por la función que los recibe y       reflejarse en el parámetro original.

Ejemplo:
a)Programa que identifica el numero mayor entre dos números





DESCRIPCION DEL PROGRAMA:  
UTILIZA CUATRO FUNCIONES: 
1) main()
2) bienvenida() 
3) capture(int valide)
4) calculeMayor(int valor1, int valor2)
OBSERVA QUE AL INICIO DE CADA FUNCION INDICA QUE TIPO DE VALOR REGRESA Y ENTRE SUS PARENTESIS INDICA LAS VARIABLES QUE RECIBIRA... 
A CADA VARIABLE SE LE ASIGNA VALOR ANTES DE ENVIARLA.

AL INICIO DEL PROGRAMA SE DEBEN DECLARAR LAS FUNCIONES A UTILIZAR, A ESTA DECLARACION SE LE LLAMA "DECLARACION DE PROTOTIPOS"




b) Programa que permite hacer suma, resta, división, multiplicación, y sacar el residuo










miércoles, 21 de octubre de 2015

OPERADORES RELACIONALES, LOGICOS, ARITMETICOS, DE ASIGNACION, DE DIRECCION EN C++

008 LENGUAJE C++ : OPERADORES
Ing, Honoria Reyes Macedo

OPERADORES: Son los simbolos que indican la operacion a realizar entre los datos. Estos datos o identificadores en programación son las variables o constantes.

TIPOS DE OPERADORES: Relacionales, Lógicos, Aritméticos, de Asignación, de dirección.

1.- Relacionales o de Comparación



2.-  Lógicos





3.- Aritméticos


4.- De Asignación




OBSERVACIONES
Como se habra notado por de las características del lenguaje:
-          Cada instrucción deberá terminar con un punto y coma (Quitar las que están dobles)
cout <<  "La suma de total1 + 4= "  << total1 <<"\n";;

-          Los bloques que contienen las instrucciones que cumplan con la decisión “if”  deberán iniciar y terminar con llaves “ { }
En este caso solo tienen una instrucción por lo que no son necesarias las llaves “{ }

    if (valor1 < valor2)
    cout <<  "valor1 es MENOR que valor2 \n";

-          Como C++ es una versión mejorada de C no tiene problemas el utilizar el salto de línea “\n” en lugar de “endl”
cout <<  "valor1 es MENOR que valor2 "  <<”\n”;   es lo mismo que 
cout <<  "valor1 es MENOR que valor2 "  <<endl;
se recomienda utilizar la ultima  ”endl”.

-          El lenguaje es sensible a las mayúsculas, los comandos deberán ir en minúsculas. Solo en el caso que el texto este contenido entre comillas no hay problema como en cout <<   "valor1 es MENOR que valor2 " 

-          El uso de variables como en el caso de “total1” en el ejercicio 3 (La variable se reutiliza en cada operación)

                         total1 =valor1 * valor2;

-          El uso de variables como en el caso de “total1” en el ejercicio 4 (La variable se utiliza como un acumulador de valores en cada operación)

total1 -= 2;

-          El uso de using namespace std;   ayuda a evitar el uso de operadores de ámbito  “std::” por cada función que le pertenezca. Estos operadores de ambito indican que las funciones utilizadas pertenecen al ambito de std.
por ejemplo

    std::cout << "Captura dos numeros: ";
    std::cin >>valor1 >>valor2;

    if (valor1 < valor2)
    std::cout <<  "valor1 es MENOR que valor2 "  <<std::endl;

martes, 20 de octubre de 2015

CICLOS, REPETICIONES O BUCLES EN C++

007  LENGUAJE C++  (CICLOS, REPETICIONES O BUCLES)
Ing. Honoria Reyes Macedo

Se dice que el lenguaje C++ es Multiparadigma porque maneja el paradigma de "Programacion Estructurada" igual que el lenguaje C y además utiliza el paradigma de "Programación Orientada a Objetos".    C++ es una versión mejorada de C.

La Programacion Estructurada: nos permite dividir un programa en varios segmentos ya sean procedimientos o funciones; además utiliza  estructuras de control de decision y estructuras de control repetitivas. Y sobre todo los programas se escriben en forma descendente.

La Programación Orientada a Objetos: Utiliza la abstracción de objetos con sus funciones(metodos) y caracteristicas(atributos): Utilizando herencia, polimorfismo y encapsulamiento.
                                 

  a) Ejemplo sin ciclos o bucles




b) Bucle  for()




c) Bucle while()



d) Bucle  do{}while()



e) Probar el siguiente programa e Identifica que sucede con  
   el orden de cada una de las siguientes operaciones

4 + - 20 / 2 * 3 – 7 % 2
4 + 5 * 6
( 3 + 6 * 4 ) % 2

#include <iostream>
using namespace std;

int main(){
    float operacion1;
    operacion1=4 + - 20 / 2 * 3 – 7 % 2;
    cout << "Resultado de la operacion1:" << operacion1;
    cin.get();
    return 0;
}







miércoles, 30 de septiembre de 2015

EJERCICIOS DE BUCLES EN C++

006  EJERCICIOS   EN LENGUAJE C .
Ing. Honoria Reyes Macedo

BUCLES E ITERACIONES: Es la repetición controlada de la secuencia de instrucciones que están dentro del bucle.


La repetición se logra controlar con una variable que incrementa o decrementa su valor en forma constante cada vez que se repiten los sucesos o instrucciones internas del bucle.

a) Capturar el siguiente programa en lenguaje C, Compilar y ejecutar

#include <stdio.h>
int main(){
    int numero, minumero;

    minumero=60;
    printf("Escribe un numero entero: ");
    scanf("%d",&numero);
    if(minumero> numero){                 //Una alternativa
        printf("T E    G A N E!  YO TENGO %d\n",minumero);
    }
    getchar();
    return 0;
}

Hacer una captura de pantalla del resultado y guardar con sus observaciones


b)  Utilizar ciclo Para

Agregar las lineas en rojo, compilar y ejecutar

#include <stdio.h>
int main(){
    int numero, minumero, contador;

    minumero=60;
    for (contador=1;contador<=3;contador++){
        printf("Escribe un numero entero: ");
        scanf("%d",&numero);
        if(minumero> numero){             //Una alternativa
            printf("T E    G A N E!  YO TENGO %d\n",minumero);
        }
    }
    getchar();
    return 0;
}

Hacer una captura de pantalla del resultado y guardar con sus observaciones

 c) Utilizar ciclo Mientras

Agregar las lineas en rojo, compilar y ejecutar

#include <stdio.h>
int main(){
    int numero, minumero, contador;

    minumero=60;
    contador=1;
    while (contador<=3){
                printf("Escribe un numero entero: ");
                scanf("%d",&numero);
                if(minumero> numero){                     //Una alternativa
                    printf("T E    G A N E!  YO TENGO %d\n",minumero);
                }
                contador=contador+1;
    }
    getchar();
    return 0;
}


Hacer una captura de pantalla del resultado y guardar con sus observaciones


d) Utilizar ciclo hacer-mientras

Agregar las lineas en rojo, compilar y ejecutar

#include <stdio.h>
int main(){
    int numero, minumero, contador;

    minumero=60;
    contador=1;
    do{
        printf("Escribe un numero entero: ");
        scanf("%d",&numero);
        if(minumero> numero){             //Una alternativa
            printf("T E    G A N E!  YO TENGO %d\n",minumero);
        }
        contador=contador+1;
    }while (contador<=3);
    getchar();
    return 0;
}

Hacer una captura de pantalla del resultado y guardar con sus observaciones



e) Probar el siguiente programa e Identifica que sucede con
   el orden de cada una de las siguientes operaciones
   -44+3*5-2
   (20+5)%6+6
   -20+-5*6/10-(5+2)
  8+10/5*5-7%1
   -14+4*5

#include <stdio.h>
int main(){
    float operacion1;
    operacion1=-44+3*5-2
    printf("Resultado de la operacion1: %3.2f",operacion1);

    getchar();
    return 0;
}

martes, 29 de septiembre de 2015

PROBLEMA 04, ALGORITMO Y CODIGO FUENTE EN C

PROBLEMAS
Ing. Honoria Reyes Macedo

I.-  Hacer un algoritmo  para llevar el control de horas que voy a estudiar diariamente, tomando en cuenta que en 7 dias tengo examen.

A) Para resolver el  problema planteado se realizaron los siguientes pasos:
1.    Identificar las condiciones del problema a cumplir
1.1.- Ir sumando las horas que estudia por 7 dias
            (solo tenemos 1 condición)

     2.    Identificar los datos(información) que hay en el problema
            Primero dentro de las condiciones del punto 1
           Al principio no tienen horas estudiadas por lo que 
          Horas=0
                        
          El limite es el numero de días a estudiar  
          limite=7


           Después en la lectura de los datos guarda lo que lee en una variable                                                          horacaptura

                       horas=horas + horacaptura

             Nota: En este caso es necesario hacer una toma de decisiones para validar horacaptura
                   si horacaptura>0 entonces 
                   y sino  advertir con un mensaje

    3.    Identificar si se utiliza algún bucle(ciclo) para repetir las condiciones establecidas
Usar un bucle para controlar los 7 dias
            limite=7
            Para dia =1  hasta dia <=limite   incrementar dia

 (Que dia inicie en 1, termine en 7 y se vaya incrementando de uno en uno)


     4.    Hacer el algoritmo

Inicio
      horas=0
      limite=7
      Para dia=1 hasta dia<=limite incrementar dia, hacer
                Escribir “Cuantas horas estudiaste el dia ”  dia “ ?”
                Lectura de horacaptura
                Si horacaptura > 0 entonces
                                horas = horas + horacaptura
                Sino
                                Escribir “¡Cuidado!”
                findesi
       findepara
       Escribir "Estudiaste" horas "horas"
Fin



B) Representación Gráfica del algoritmo (Mediante un Diagrama de Flujo)



C) Prueba de Escritorio
            Se fue recorriendo paso a paso cada instrucción del algoritmo para ir registrando y cancelando los valores que toma cada variable






D) CODIGO FUENTE en lenguaje  C.
Serie de instrucciones que al compilarse genera un "Codigo objeto(binario)" que la computadora puede interpretar y ejecutar


E) Compilar y Ejecutar: La compilación convierte el código fuente en código objeto(binario) que al ejecutarse muestra la siguiente pantalla.