domingo, 28 de abril de 2019

Pasos para el desarrollo lógico aritmético en la informática (Rubén González)

En computación, la unidad aritmética lógica o unidad aritmético-lógica, también conocida como ALU, es un circuitppo digital que calcula operaciones aritméticas (como suma, resta, multiplicación, etc.) y operaciones lógicas (si, y, o, no), entre valores (generalmente uno o dos) de los argumentos.


Una ALU debe procesar números usando el mismo formato que el resto del circuito digital. Para los procesadores modernos, este formato casi siempre es la representación del número binario de complemento a dos. Las primeras computadoras usaron una amplia variedad de sistemas de numeración, incluyendo complemento a uno, formato signo-magnitud, e incluso verdaderos sistemas decimales, con diez tubos por dígito.

Las ALU para cada uno de estos sistemas numéricos mostraban diferentes diseños, y esto influenció la preferencia actual por el complemento a dos, debido a que ésta es la representación más simple, para el circuito electrónico de la ALU, para calcular adiciones, sustracciones, etc.

PASOS PARA PLANTEAR LA SOLUCIÓN A UN PROBLEMA:
1.- Análisis del problema.
2.- Identificar las entradas, procesos y salidas del problema, declaración de variables.
3.- Diseño del Algoritmo: Describe la secuencia ordenada de los pasos, sin ambigüedad, es decir, siendo preciso y veraz en la búsqueda de la solución al problema.
4.- Codificación del Algoritmo: Es la expresión en un lenguaje de programación de los pasos definidos en el algoritmo.
5.- Ejecución y validación del programa por el computador.

Teoría para el desarrollo Lógico de problemas de algoritmo (Rubén González)

Razonamiento lógico

Es  la base para elaborar soluciones informáticas, tanto en software como en hardware. Es bien conocido que los profesionales que aplican adecuadamente el razonamiento lógico tiene mayores posibilidades de éxito, tanto en lo profesional como en lo personal, ya que analizar, saber buscar posibilidades, demostrar o refutar afirmaciones diversas, le permite a quien tiene ese conocimiento y manejo ser un mejor ser humano y por consiguiente un profesional con mayores y mejores aptitudes y actitudes para vivir en una sociedad como la actual, necesitada de ecuanimidad, raciocinio y capacidad de análisis para solucionar sus cada vez más complejos problemas.


Diseñar, desarrollar y mantener software son procesos netamente creativos que se sustentan fundamentalmente en la capacidad de razonamiento, en el pensamiento computacional y algorítmico y en la habilidad para abstraer cualquier problema, por lo que es necesario estructurar este curso para ofrecer una base sólida de la lógica en la línea computacional para los futuros ingenieros de sistemas. Desde la publicación de los trabajos de Herbrand en 1930 la lógica se ha convertido en un valioso instrumento conceptual al servicio de las ciencias computacionales, en la que ayudan para representar el conocimiento y para soportar el diseño de sistemas de información, es decir, hoy la lógica computacional se aborda desde la perspectiva de aplicación a la computación.


La principal razón para que las personas aprendan lenguajes de 
programación es utilizar un ordenador como una herramienta para la 
resolución de problemas. Tres fases pueden ser identificadas en el proceso 
de resolución : 

  • - Fase de Identificación (qué nos plantean) 
  • - Fase de resolución del problema 
  • - Fase de implementación (realización) en un lenguaje de 
  • programación

Sistema informático (Victor García)

Definición de Sistema informático  



No todos los sistemas de información son sistemas informáticos, pero todos los sistemas informáticos son sistemas de información. Por lo tanto se puede decir que un sistema informático es un subconjunto de un sistema de información.

Por ejemplo, el sistema de información de una biblioteca antiguamente se hacía manualmente: el ingreso de nuevos libros, las fichas de cada libro se llenaban a mano, las búsquedas de libros, la organización de los mismos en estantes, etc.

Con la llegada de la computadoras una biblioteca sigue contando con un sistema de información para organizarse, pero que a su vez contiene un sistema informático: una o más computadoras para buscar libros, para ingresarlos al sistema, para saber dónde están ubicados exactamente, un operador que controla las computadoras (el operador humano se considera parte parte del sistema), disponibilidad de impresoras, escáneres, manuales de uso del sistema, técnicos de mantenimiento del sistema, usuarios del sistema,  etc.


Un sistema informático es un conjunto de partes o recursos formados por el hardware, software y las personas que lo emplean, que se relacionan entre sí para almacenar y procesar información con un objetivo en común.

Son ejemplos de sistemas informáticos: sistema gestor de una biblioteca, un sistema de contabilidad computarizado, sistema de control de compras y ventas en una empresa.


Recursos de un Sistema Informático


Recurso físico (o de hardware): computadoras, impresoras, escáneres, memorias, lectores de código de barras, estructura física de una red de computadoras, etc.


Recurso lógico (o de software): manuales de uso, sistema operativo, archivos, documentos, aplicaciones, firmware, bases de datos, información de una red de computadoras, etc.


Recurso humano: son todos las personas que forman parte del sistema, como ser los operadores del sistema, los técnicos que lo mantienen y los usuarios finales.

variable lógica y combinada (Rubén González)


Variable Lógica

Símbolo que, en una fórmula lógica, indica de forma indeterminada los miembros de una clase y puede ser sustituido por cualquiera de ellos, por lo que se denominan valores de la variable.
Son aquellas que solo pueden tener dos valores (cierto o falso) estos representan el resultado de una comparación entre otros datos.


Variable combinada

describe una situación donde una variable depende de dos (o más) otras variables, y varía directamente con algunas de ellas y varia inversamente con otras (cuando el resto de las variables se mantuvieron constantes). 

Regla de la tabla de la verdad (Victor García)

Qué son las tablas de la verdad



Las tablas de verdad son, por una parte, uno de los métodos más sencillos y conocidos de la lógica formal, pero la mismo tiempo también uno de los más poderosos y claros. Entender bien las tablas de verdad es, en gran medida, entender bien a la lógica formal misma.

Estas tablas pueden construirse haciendo una interpretación de los signos lógicos como: no, o, y, si…entonces, sí y sólo si. La interpretación corresponde al sentido que estas operaciones tienen dentro del razonamiento. Puede establecerse una correspondencia entre los resultados de estas tablas y la deducción lógico matemática. En consecuencia, las tablas de verdad constituyen un método de decisión para chequear si una proposición es o no un teorema. Para la construcción de la tabla se asignará el valor 1(uno) a una proposición cierta y 0 (cero) a una proposición falsa.

Negación: El valor de verdad de la negación es el contrario de la proposición negada.
La conjunción sirve para indicar que se cumplen dos condiciones simultáneamente, por ejemplo:
La función es creciente y está definida para los números positivos, utilizamos Para que la conjunción p^q sea verdadera las dos expresiones que intervienen deben ser verdaderas y sólo en ese caso como se indica por su tabla de verdad.

Disyunción: La disyunción solamente es falsa si lo son sus dos componentes.
Con la disyunción a diferencia de la conjunción, se representan dos expresiones que afirman que una de las dos es verdadera, por lo que basta con que una de ellas sea verdadera para que la expresión p ∨ q sea verdadera.


Condicional: El condicional solamente es falso cuando el antecedente es verdadero y el consecuente es falso. De la verdad no se puede seguir la  falsedad.


Bicondicional:El bicondicional solamente es cierto si sus componentes tienen el mismo valor de verdad.


Otras tablas de verdad divergentes

Además de las tablas polivalentes e intencionales, hay muchas otras tablas de verdad. Por ejemplo, hay tablas de verdad en las que los renglones se bifurcan en dos o más sub-renglones y son útiles para lo que en lógica llamamos super-valuaciones. También existen tablas con valores y más de 2n renglones, ¿cómo es posible? Pues porque, a diferencia de las tablas tradicionales, en estas tablas el orden de los renglones sí importa, de tal manera que renglones repetidos cuentan como renglones distintos. Finalmente, también existen las tablas bidimensionales, usadas originalmente en ciertas lógicas intencionales, pero popularizadas gracias al trabajo de Robert Stalnaker y otros .

Tipos de lenguajes de programación (Victor García)

CONOCE LOS TIPOS DE LENGUAJES DE PROGRAMACIÓN: BAJO Y ALTO NIVEL 

Anteriormente, cuando solo existían los lenguajes de bajo nivel (código máquina y ensamblador), darle instrucciones al computador era una tarea bastante compleja y que requería mucho tiempo.

No sería hasta la llegada de Fortran (el primer lenguaje de alto nivel), en que ya no era necesario escribir en binario para darle instrucciones al ordenador.

Aquí te contamos todo lo que tienes que saber sobre estos lenguajes de alto nivel (compilador e interpretados) y bajo nivel (máquina y ensambl ador).

Un lenguaje de programación es, básicamente, el medio para darle instrucciones al computador.

Los ordenadores tienen millones de interruptores que están encendidos (1) o bien apagados (0). Así, puedes darle instrucciones al ordenador por medio de bits (cadenas de 0s y 1s). Sin embargo, esto resulta demasiado complejo.

Es por ello que se crearon los lenguajes de programación de alto nivel, para escribir código legible que será traducido al lenguaje máquina (binario). Es decir, para que sean intermediarios entre los desarrolladores y el hardware.

Lenguajes de programación de bajo nivel

Los lenguajes de bajo nivel son aquellos que están más próximos al lenguaje de máquina (de ceros y unos). Es decir, tienen un control directo sobre el hardware.

A diferencia de los lenguajes de alto nivel, no necesitan compiladores. Se ejecutan directamente en el procesador y dependen de la arquitectura del hardware.

Los programas que se crean con estos lenguajes de bajo nivel dependen totalmente del hardware. Por esta razón, no se pueden migrar o utilizar en otras máquinas.

Además, pese a que aprovechan mejor las características del hardware, son los tipos de lenguajes más difíciles de entender y aprender.

Existen dos tipos de lenguajes de bajo nivel: máquina y ensamblador.

a. Lenguaje de máquina
El lenguaje de máquina es aquel que es interpretado directamente por el procesador, por lo que su ejecución es mucho más rápida.

Así mismo, consta de cadenas de números binarios (0s y 1s). Por esta razón, programar en este lenguaje es una tarea difícil que requiere una gran inversión de tiempo.

Lenguaje de máquina

Cabe destacar que los programas escritos en este lenguaje no necesitan ser traducidos, pues es el único lenguaje que el procesador entiende directamente.

Además, pese a que hace un uso eficiente de la memoria, encontrar un fallo en el lenguaje de máquina es una tarea casi imposible.

b. Lenguaje ensamblador
El lenguaje ensamblador (assembler o asm) no es más que códigos mnemotécnicos (abreviaturas de letras y números) de las instrucciones máquina (binario).

En consecuencia, los programas escritos en ensamblador se traducen a código máquina de forma inmediata.

Lenguaje ensamblador

Lenguaje ensamblador – Imagen: Android Authority

Por otro lado, este lenguaje de bajo nivel depende estrictamente del tipo de procesador utilizado. Es por ello que programar en ensamblador requiere conocer, en forma detallada, las especificaciones del hardware.

De igual manera, el software escrito en este lenguaje resulta ser poco o nada portable. Aunque, como ventaja, ocupa menos memoria, es más fácil de depurar y su código fuente resulta más corto.

Lenguajes de programación de alto nivel

Los lenguajes de alto nivel están más próximos al lenguaje humano y más alejados de la máquina. Por lo tanto, resultan más fáciles de entender y son más flexibles a la hora de programar.

Además, este tipo de lenguaje de programación es traducido al lenguaje máquina mediante un intérprete o compilador.

Así mismo, al ser independientes del hardware, los programas escritos en estos lenguajes de alto nivel pueden ejecutarse en diferentes plataformas (Windows, Linux, etc.)

Por otro lado, al existir una gran cantidad de lenguajes de alto nivel, su clasificación es muy diversa.

Sin embargo, aquí vamos a señalar dos tipos de lenguajes de alto nivel: lenguajes compilados e interpretados.

a. Lenguajes compilados

Los lenguajes compilados son aquellos que son traducidos al lenguaje de máquina (cadenas de bits) de una sola vez.

En consecuencia, cada modificación que realices en el código fuente requiere volver a compilar (traducir a código máquina) todo.

Sin embargo, hay algunos lenguajes como Java que primero compilan a bytecode  (un código intermedio) y luego es interpretado a máquina.

Pensamiento Lógico Matemático (Rubén González)

Pensamiento lógico matemático

El razonamiento lógico matemátco no existe por si mismo en la realidad.La raíz del razonamiento lógico-matemático está en la persona.
 Cada sujeto lo construye por abstracción reflexiva. Esta abstracción reflexiva nade de la coordinación de las acciones que realiza el sujeto con los objetos.
El conocimiento lógico-matemático lo construye el niño al relacionar las experiencias obtenidas en la manipulación de los objetos. Un ejemplo más utilizado es que el niño diferencia entre un objeto de textura suave de otro de textura áspera.
Resultado de imagen para logica

LA IMPORTANCIA DEL PENSAMIENTO MATEMATICO


 El pensamiento Lógico-Matemático está relacionado con la habilidad de trabajar y pensar en términos de números y la capacidad de emplear el razonamiento lógico. El desarrollo de este pensamiento, es clave para el desarrollo de la inteligencia matemática y es fundamental para el bienestar de los niños y niñas y su desarrollo, ya que este tipo de inteligencia va mucho más allá de las capacidades numéricas, aporta importantes beneficios como la capacidad de entender conceptos y establecer relaciones basadas en la lógica de forma esquemática y técnica. Implica la capacidad de utilizar de manera casi natural el cálculo, las cuantificaciones, proposiciones o hipótesis. Todos nacemos con la capacidad de desarrollar este tipo de inteligencia.

El pensamiento lógico matemático es fundamental para comprender conceptos abstractos, razonamiento y comprensión de relaciones. Todas estas habilidades van mucho más allá de las matemáticas entendidas como tales, los beneficios de este tipo de pensamiento contribuyen a un desarrollo sano en muchos aspectos y consecución de las metas y logros personales, y con ello al éxito personal. La inteligencia lógico matemática contribuye a: • Desarrollo del pensamiento y de la inteligencia. • Capacidad de solucionar problemas en diferentes ámbitos de la vida, formulando hipótesis y estableciendo predicciones. • Fomenta la capacidad de razonar, sobre las metas y la forma de planificar para conseguirlo. • Permite establecer relaciones entre diferentes conceptos y llegar a una comprensión más profunda. • Proporciona orden y sentido a las acciones y/o decisiones.
Resultado de imagen para logica
Una falacia es un razonamiento no válido o incorrecto pero con apariencia de razonamiento correcto. Es un razonamiento engañoso o erróneo (falaz), pero que pretende ser convincente o persuasivo. Todas las falacias son razonamiento que vulneran alguna regla lógica. Así, por ejemplo, se argumenta de una manera falaz cuando en vez de presentar razones adecuadas en contra de la posición que defiende una persona, se la ataca y desacredita: se va contra la persona sin rebatir lo que dice o afirma.
No debemos confundir validez y verdad, como ya hemos visto y las falacias se caracterizan porque algo falla en el razonamiento mismo, es decir, o falla la forma y falla el contenido o significado ---la materia--- de los argumentos supuestamente lógicos o válidos. Así sn algunos casos el problema es la ambigüedad de algunos términos, que nos permitía utilizarlos con dos sentidos distintos en distintas premisas, con lo que al final llegábamos a una conclusión disparatada. Otras veces, en cambio, lo que están mal son las premisas (partimos de premisas falsas que nos parecen verdaderas). Finalmente, hay veces en que lo que está mal es la relación misma entre las premisas (que no es lógica). 
Resultado de imagen para falacias
Por tanto, clasificamos las falacias en formales y no formales o materiales.

Las falacias formales

Las falacias formales son argumentaciones en las que la conclusión no se sigue (ni necesaria ni probablemente) de las premisas. La forma misma del razonamiento es incorrecta, por lo que es imposible deducir lo que se dice en la conclusión.

Se dividen en :

  • Falacia de ambigüedad.- Contienen frases o palabras que cambian su manera sutil.

Ejemplo: El fin de una cosa, es su perfección, la muerte es el fin de la vida; por lo tanto la muerte es la perfección de la vida.


  • Falacia de insuficiencia.- Se encuentran ocultas ideas que no son probadas o son falsas.

Ejemplo: A mi grupo de amigos les encanta el fútbol. A todo el mundo le gusta.


  • Falacia de irrelevancia.- Son aquellos argumentos que no tienen evidencias para llegar a una conclusión, es decir son irrelevantes.
Ejemplo: Dices que no debo copiar. Pero mira quién lo dice

Las falacias no formales

Consulta el apartado 2 Falacias no formales que son razonamientos en los cuales lo que aportan las premisas no es adecuado para justificar la conclusión a la que se quiere llegar. Se quiere convencer no aportando buenas razones sino apelando a elementos no pertinentes o, incluso, irracionales. Cuando las premisas son informaciones acertadas, lo son, en todo caso, por una conclusión diferente a la que se pretende.

Entre los  elementos que posee una falacia informal tenemos:



  • Apelación a los sentimientos.- Tratan de manipular y convencer a las personas.
Ejemplo: Si repruebo el examen, mi mamá morirá de tristeza.
  • Referencia insuficiente.- Nos trata de convencer pero no puede porque le falta argumentos para poder ser creíble.
EjemploQue de cada cinco personas una nazca en China, no significa que todos aquellos que tienen cinco hijos tienen uno que es chino.



  • Conclusión irrelevante.- Son las que no tienen evidencias y ni tampoco importancia.
EjemploPablo es un buen deportista y debe ganar la copa. Después de todo es un buen tipo, ha donado mucho dinero y es un miembro de un grupo musical.
  • Causa falsa.- Son razones falsas que no tienen argumentos.
Ejemplo: El cáncer del pulmón se presenta en personas que fuman cigarrillos, por lo tanto fumar cigarrillos es la causa de este cáncer.
Resultado de imagen para falacias

Investigación 2 (Victor García)

1.¿ Qué es programación? 
R. La programación es un proceso que se utiliza para idear y ordenar las acciones que se realiazaran en el marco de un proyecto; Al anuncio de las partes que componen un acto o proyecto; También se utiliza para solucionar o resolver problemas mediante ordenes y a la preparación de los datos necesarios para exponer una solución de un problema.

Programación 
2.¿ Qué es codificación? 
R. La codificación de caracteres es el método que permite convertir un carácter de un lenguaje natural en un símbolo de otro sistema de representación, como un número o una secuencia de pulsos electromagnéticos en un sistema eléctrico, aplicando normas o reglas de codificación; La codificación es cualquier operación que implique la asignación de símbolos o caracteres a un determinado mensaje verbal o no verbal con el propósito de transmitirlo a otro individuo o computador.

Codificación de (símbolos) 
3.¿ Qué es compilación? 
R. Compilación es el efecto y también la acción del verbo compilar, que deriva en su etimología del latín “compilare” con el significado de juntar o reunir lo que anteriormente se hallaba por separado; Y también es el proceso por el cual se traduce las instrucciones escritas en un determinado lenguaje de programación al lenguaje de máquina. 

Compilación e interpretación. 
4¿ Qué es diagrama de flujo? 
R. El diagrama de flujo o flujo grama o diagrama de actividades, es la representación gráfica de un algoritmo o proceso. Se utiliza en disciplinas como programación, economía, procesos industriales y psicología cognitiva; El diagrama de flujo en la programación es muy útil ya que en esta se muestra como debe ejecutarse el programa, además tiene que estar totalmente detallado ya que un solo error haría que el programa no se ejecute.

Diagrama de flujo (sencillo) 
5.Regla de la verdad o de la informática lógica. 
R. La conjunción es un operador, que actúa sobre dos valores de verdad, típicamente los valores de verdad de dos proposiciones devolviendo el valor de verdad verdadero cuándo ambas proposiciones son verdaderos; y falso en cualquier otro caso. Es decir, es verdadero cuándo ambos son verdaderos; La construcción de la tabla de la verdad esta complementada en la utilización de una letra para la variables de un resultado.

Tabla de la verdad 



Investigación 1 (Victor García)

1.¿Qué es Sistema informático? 
R. Es un sistema que permite almacenar y procesar información  ;es el conjunto de partes interrelacionadas con el hardware , software y personal informático ; Conjunto de ordenes y programas que controlan los procesos. Básicos de una computadora y permite el funcionamiento de otros. 

Sistema informático 
2.¿ Qué es desarrollo lógico? 
R. Desarrollo lógico de problemas de computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una maquina, para expresar algoritmos con precisión; Es aquel que se desprende de las relaciones entre los objetos de la propia elaboración del individuo. 
Como hacer un proyecto usando lógica
3.¿ Qué es lenguaje de programación ? 
R. Un lenguaje de programación es un lenguaje formal que proporciona una serie de instrucciones que permiten a un programador escribir secuencias de ordenes y algoritmos a modo de controlar el comportamiento físico y lógico de una computadora con el objetivo de que produzca diversas clases de datos.

Lenguajes de programación 
 4.¿ Qué es lenguaje de máquina? 
R. Es el único lenguaje que entiende la computadora digital, en su lenguaje natural. Se puede utilizar dos símbolos que son el cero(0) y uno(1) por ello el lengua de máquina se le llama lenguaje binario. La computadora se maneja con bytes sin embargo, para el programador no resulta fácil escribir las instrucciones, pero que dicho programa pueda funcionar en una segunda computadora habrá que traducir todas la instrucciones escritas a un lenguaje de máquina.

Lenguaje máquina (bytes) 
5.¿ Qué es lenguaje de bajo nivel? 
R. Es un lenguaje de programación de características de bajo nivel o de primera generación ,es aquel en el que sus instrucciones ejercen un control directo sobre el hardware y están condicionados por la estructura física de la PC que la soporta; Es aquel que expone al programador a las operaciones de las máquina sin aportar instrucciones propias es decir, en los lenguajes de bajo nivel será posible hacer todo lo que el equipo sea capaz de hacer.

Lenguaje de bajo nivel 
6.¿ Qué es lenguaje de alto nivel? 
R. Se caracterizan por expresar algoritmos de una manera adecuada a la capacidad cognitiva humana; Permite al programador utilizar palabras o expresiones sintácticas muy similares al ingles por ejemplo : Se pueden utilizar tales como care, if, for, while, para construir con media instrucciones.

Lenguaje de alto nivel 
7.¿Qué es lenguaje de cuarta generación? 
R. Son aquellos lenguajes de programación diseñados con un propósito especifico por ejemplo :el desarrollo de software comercial. En ingles la cuarta generación de lenguajes es la continuación de la tercera generación donde se continúa la tendencia asía una maza abstracción y poder en la ascendencia de la programación, una serie de instrucciones que permiten a un programador escribir secuencias de ordenes y algoritmos.

Lenguaje de cuarta generación (4GL) 
8.¿ Qué es lenguaje natural? 
R. En la filosofía del lenguaje, el lenguaje natural es la lengua o idioma hablado o escrito por humanos para un propósito generales de comunicación ; El lenguaje natural se usa para programar ya que a los programadores se les hace mas fácil, por que pueden hablar o escribir oraciones mas detalladas y así el programa se ejecuta mejor ,el lenguaje natural se traduce a un lenguaje que la computadora o PC pueda entender mediante un interprete o compilador.

Lenguaje natural (lenguaje humano)