jueves, 27 de abril de 2017

Componentes
  • Un programa de C++ está definido por funciones (grupo de instrucciones que pueden o no hacer algún cálculo), donde la función principal debe ser llamada main.
La composición general de un programa en C++ es:
  • directivas de preprocesamiento.
  • declaraciones globales
  • función main.
  • funciones definidas por el usuario.
  • comentarios para entender el funcionamiento del programa.
Directivas de procesamiento

  • las directivas de preprocesamiento son definidas para que el compilador realice algo antes de compilar el programa (revisar si la sintaxis es correcta y generar un código ejecutable por la computadora), como incluir funciones de alguna biblioteca conocida.
Declaraciones Globales

Hasta ahora hemos diferenciado a las variable segun su “tipo” (int, char double, etc), el cual se refería, en última instancia, a la cantidad de bytes que la conformaban. Veremos ahora que hay otra diferenciación de las mismas, de acuerdo a la clase de memoria en la que residen.
Si definimos una variable AFUERA de cualquier función (incluyendo esto a main() ), estaremos frente a lo denominado VARIABLE GLOBAL. Este tipo de variable será ubicada en el segmento de datos de la memoria utilizada por el programa, y existirá todo el tiempo que esté ejecutándose este.
Este tipo de variables son automáticamente inicializadas a CERO cuando el programa comienza a ejecutarse.
Son accesibles a todas las funciones que estén declaradas en el mismo, por lo que cualquiera de ellas podrá actuar sobre el valor de las mismas.
Por ejemplo:
#include <stdio.h>
double una_funcion(void);
double variable_global ;
main()
{
double i ;
printf(“%f”, variable_global );             /* se imprimirá 0 */
i = una_funcion() ;
printf(“%f”, i );                                     /* se imprimirá 1 */
printf(“%f”, variable_global );               /* se imprimirá 1 */
variable_global += 1 ;
printf(“%f”, variable_global );               /* se imprimirá 2 */
return 0 ;
}
double una_funcion(void)
{
return( variable_global  += 1) ;
}

int y; /* Global. Conocida tanto por main() como por MiFuncion() */

main ()
{
     int x;                                               /* Esta x es local a main () */
     y = 100;
     x = 1;
     printf (“x=%d, y=%d”, x, y)        /* Visualiza x=1, y=100 */
     {                                                      /* Comienza bloque */
          int x;                                           /* Esta x es local al bloque */
          x = 2;
          printf (“x=%d, y=%d”, x, y)               /* Visualiza x=2, y=100 */
          MiFuncion ()                              /* Visualiza x=3, y=100 */
          printf (“x=%d, y=%d”, x, y)               /* Visualiza x=2, y=100 */
     }                                                      /* Fin del bloque */
     printf (“x=%d, y=%d”, x, y)        /* Visualiza x=1, y=100 */
}

MiFuncion ()
{
     int x;                                               /* Local a MiFuncion() */
     x = 3;
     printf (“x=%d, y=%d”, x, y)        /* Visualiza x=3, y=100 */
}

Función Main
La función main se define de la misma forma que cualquier función en C, pero tiene una peculiaridad lo suficientemente fuerte como para que haya que dedicar un apartado entero a hablar de ella: hay que definirla siempre. La función main es un ingrediente que debe encontrarse en todos los programas escritos en lenguaje C, sin excepciones. Define, valga la redundancia, la función principal del programa, esto es, su cometido. Todo programa está hecho para resolver un problema y la función main se encarga de dirigir el algoritmo que da solución al mismo. Es importante hacer énfasis en que main DIRIGE. Dediquemos unos instantes a reflexionar sobre ello.
Existen multitud de problemas susceptibles de ser resueltos con un programa de ordenador. El número de líneas de código necesarias para resolver un problema dado depende, como es lógico, de la complejidad del mismo. En general, cuanto más complicado sea el problema, < número de líneas de código serán necesarias. Un programa extremadamente complejo, por ejemplo un sistema operativo, puede estar compuesto de millones de líneas de código. He aquí la pregunta del millón (de líneas de código), ¿se escriben todas estas líneas dentro de la función main? Es evidente que un programa así escrito sería imposible de depurar o ampliar. Justo en este punto es donde entran las funciones de las que hablábamos en los apartados anteriores. Un problema complejo puede ser descompuesto en muchos problemas pequeños, cada uno de los cuales puede ser resuelto por una función. El papel de main es en general el de coordinar (invocar) a las distintas funciones para que el programa lleve a cabo su cometido exitosamente. En el ejemplo de la empresa que veíamos, main es el presidente de la compañía.

Funciones definidas por el usuario
  • Un programa en C++ se forma por una colección de funciones.
  • todos los programas se construyen a partir de una o más funciones que se integran para crear una aplicación.
  • todas las funciones contienen uno o más estatutos C++ y se crean generalmente para realizar una única tarea. 
  • la definición de una función se realiza escribiendo primero del tipo de valor de retorno de la función, después el nombre de la función, posteriormente entre paréntesis las variables que utilizará dicha función (parámetros) y finalmente las instrucciones de la función. Las funciones definidas por el usuario se invocan por su nombre y los parámetros opcionales que se puedan tener.
  • Todas las funciones tienen nombre y una lista de valores que recibe. Se puede asignar cualquier nombre a la función, pero normalmente se procura que dicho nombre describa el propósito de la función. Una declaración de función indica al compilador el nombre de la función que se está invocando en el programa. Si la función no se defina, el compilador informa de un error. 
  • Por ejemplo: double promedio( int a, int b, int c) {    return (a + b + c ) / 3.0; } Declara a la función promedio, la cual recibe tres valores enteros y calcula y regresa el promedio de ellos. 
  • Funciones definidas por el usuario int suma( int a, int b) {    return (a + b); }Declara a la función suma, la cual recibe dos valores enteros y calcula y regresa la suma de ellos.
C++

Historia
C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne Stroustrup. La intención de su creación fue el extender al lenguaje de programación C mecanismos que permiten la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.
Posteriormente se añadieron facilidades de programación genérica, que se sumaron a los paradigmas de programación estructurada y programación orientada a objetos. Por esto se suele decir que el C++ es un lenguaje de programación multiparadigma.
Actualmente existe un estándar, denominado ISO C++, al que se han adherido la mayoría de los fabricantes de compiladores más modernos. Existen también algunos intérpretes, tales como ROOT.
Una particularidad del C++ es la posibilidad de redefinir los operadores, y de poder crear nuevos tipos que se comporten como tipos fundamentales.
El nombre "C++" fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el nombre "C con clases". En C++, la expresión "C++" significa "incremento de C" y se refiere a que C++ es una extensión de C.
Las principales características del Lenguaje C++ son:
1.-Tiene un conjunto completo de instrucciones de control.
2.-Permite la agrupación de instrucciones.
3.-Incluye el concepto de puntero (variable que contiene la dirección de otra variable).
4.-Los argumentos de las funciones se transfieren por su valor.
5.- E/S no forma parte del lenguaje, sino que se proporciona a través de una biblioteca de funciones.
Permite la separación de un programa en módulos que admiten compilación independiente.
Originalmente el Lenguaje C estuvo muy ligado al sistema operativo UNIX como se había mencionado antes que, en su mayor parte, está escrito en C. Más adelante se comenzó a utilizar en otros sistemas operativos para programar editores, compiladores, etc. Aunque se le conoce como un lenguaje de programación de sistemas, no se adapta mal al resto de aplicaciones. De hecho, hoy en día un alto porcentaje de software para ordenadores personales está escrito en Lenguaje C. Por ejemplo, el sistema operativo MS-DOS.


Versiones

El C++ es un idioma de programcion, tomado de mejorar con el agregado de pre-estructuras el idiona C.
EN general los programas en c++ son compatibles , los que tienen cierta diferencia son los compiladores.
Compilador, es un programa, que entiende el codigo y lo transforma en ordenes de maquina, El compilador tiene su sistema de deteccion de errores y su ayuda. Hay compiladores que solo procesan sobre consola es decir sobre la base del msdos o similar, otros permiten procesar en ventanas (windows) e incorporar objetos visuales a lo que es codificacion.
Para consola, los mas comunes son el turbo c++ de borland, que admiten objetos o ventanas el Dev C++ , el Visual C++ el borland buid C++ y hay muchos mas.
El C++ agrega preestructuras que es algo asi como las librerias que reciben el nombre de archivos de cabecera, cada compilador tiene sus librerias, y son compatibles entre si, salvo la forma de escribirse. Por ejemplo en Turbo C++ #include <iostream.h> es equivalente al #include <iostream> del Dev C++ y el Visual C++ El TurboC++ y el DevC++ tienen el achivo de cabecera conio.h, pero no son iguales asi que no todas las funciones de este archivo son compatibles y entre Visual C++ pasa lo mismo.
Ahora, si tus dudas tienen que ver con que comenzas a aprender a rogramar, yo te recomiendo el turbo c++ de borland, es un compilador que tiene buena ayuda y formas de seguir facilmente la ejecucion del programa escrito en codigo. El problema es que esta en ingles, pero con un diccionario y algo de imaginacion, se sale adelante. 



Códigos Binarios

Códigos Binarios

El código binario es el sistema numérico usado para la representación de textos, o procesadores de instrucciones de computadora utilizando el sistema binario (sistema numérico de dos dígitos, o bit: el "0" /cerrado/ y el "1" /abierto/). En informática y telecomunicaciones, el código binario se utiliza con variados métodos de codificación de datos, tales como cadenas de caracteres, o cadenas de bits. Estos métodos pueden ser de ancho fijo o ancho variable. Por ejemplo en el caso de un CD, las señales que reflejarán el "láser" que rebotará en el CD y será recepcionado por un sensor de distinta forma indicando así, si es un cero o un uno.


Características
Ponderación
La mayoría de los sistemas de numeración actuales son ponderados es decir, cada posición de una secuencia de dígitos tiene asociado un peso. El sistema binario es, de hecho, un sistema de numeración posicional ponderado. Sin embargo, algunos códigos binarios, como el código Gray no son ponderados es decir, no tienen un peso asociado a cada posición. Otros, como el mismo código binario natural o el BCD natural sí lo son.
Distancia
La distancia es una característica sólo aplicable a las combinaciones binarias. La distancia entre dos combinaciones es el número de bits que cambian de una a otra. Por ejemplo: si se tienen las combinaciones de cuatro bits 0010 y 0111 correspondientes al 2 y al 7 en binario natural, se dirá que la distancia entre ellas es igual a dos ya que de una a otra cambian dos bits.
Además, con el concepto de distancia se puede definir la distancia mínima de un código. Ésta no es más que la distancia menor que haya entre dos de las combinaciones de ese código.
La distancia es una característica que, además, sólo se aplica a las combinaciones binarias. En resumen, la distancia entre dos combinaciones es el número de bits que cambian de una a otra.
Autocomplementariedad
Se dice que un código binario es autocomplementario cuando el complemento a 9 del equivalente decimal de cualquier combinación del código puede hallarse invirtiendo los valores de cada uno de los bits (operación lógica unaria  de negación) y el resultado sigue siendo una combinación válida en ese código. Esta característica se observa en algunos códigos BCD, como el código Aikeno el código BCD exceso 3. Los códigos autocomplementarios facilitan las operaciones aritméticas.

En un código binario de ancho fijo, cada letra, dígito, u otros símbolos, están representados por una cadena de bits de la misma longitud, como un número binario que, por lo general, aparece en las tablas en notación octal, decimal o hexadecimal.

Conversión de binario a decimal
Paso 1
Escribe el número binario y lista las potencias de 2 de derecha a izquierda.
Paso 2
Escribe los dígitos del número binario debajo de sus potencias correspondientes. 
Paso 3


Conecta los dígitos del número binario con sus potencias correspondientes.

Paso 4
Escribe el valor final de cada potencia de dos. 
Paso 5


Suma los valores finales.

Paso 6
Escribe la respuesta junto con el subíndice base. 
Paso 7
Utiliza este método para convertir un número binario con coma decimal a su forma decimal.

Conversión de decimal a binario
Método 1
Paso 1


Escribe el problema. 

Paso 2
Haz la división.
Paso 3 
Continúa dividiendo hasta que el resultado sea 0.
Paso 4 
Escribe el número binario que obtuviste. 
Método 2
Paso 1 


Haz una tabla.

Paso 2


Busca la mayor potencia de 2. 

Paso 3
Muévete a la potencia más cercana de dos. 
Paso 4


Resta cada número sucesivo que quepa en el dividendo, y márcalo con un 1.

Paso 5
Continúa hasta que llegues al final de la tabla
Paso 6


Escribe la respuesta binaria.




jueves, 20 de abril de 2017


Centro Educativo Santo Domingo


Magledys Trejos


Informática


Código Binario


Prof. Guadalupe Espinosa


XI°B


6 de abril del 2017