Está en la página 1de 7

Nombre: Sebastián André López Macías

Fecha: 29/06/2021
Cátedra: Computación II – TIC para la toma de decisiones
Docente: Ing. Mary Liz Vergara Apolinario
Grupo: MED-S-CO-2-6
TRABAJO AUTÓNOMO N°2
1. Introducción a la programación
Las computadoras son un beneficio para la sociedad y la
vida cotidiana, siendo uno de los inventos más importantes
de la historia. Tanto su forma como su funcionamiento, han
sufrido transformaciones en pro mejoras de las
capacidades y aplicaciones en las diversas áreas. Se conoce
en la actualidad que este aparato es producto de una serie
de operaciones aritméticas y lógicas y procesos de decisión
y/o repetitivos, con una asombrosa capacidad de
almacenar datos, convirtiéndose en una pieza esencial para la ejecución de todo tipo de
tareas, las cuales en su gran mayoría pueden ser realizadas en un periodo de tiempo muy
corto.
Estas operaciones están dadas por programaciones, que son procesos mediante el cual se
codifican una serie de instrucciones, en un determinado lenguaje, para ser posteriormente
decodificados y ejecutados por un sistema computacional, todo ello con el fin de resolver
un problema. Es decir, implementar desde un algoritmo hacia un lenguaje de
programación y dar solución a un problema.
Hay que tener presente los siguientes conceptos:

 Algoritmo:
Conjunto de pasos finitos y secuenciales que permiten resolver un problema. El
nombre de algoritmos deriva del matemático persa Alkhowarizmi en el siglo XVIX.
 Programa:
Es una secuencia de instrucciones que una computadora puede interpretar y
ejecutar.
 Lenguaje de programación:
Los lenguajes de programación son una serie de comandos que escritos
secuencialmente y respetando la sintaxis resuelven una situación problemática en
cuanto a información.
1.1. Pseudocódigo
Es un lenguaje informal no estándar que permite establecer su solución con más precisión,
pero con menos precisión que la que se requiere cuando se utiliza un lenguaje de
programación formal. El pseudocódigo permite concentrarse en la lógica del programa sin
tener que preocuparse por la sintaxis precisa de un lenguaje de programación en
particular. Sin embargo, el pseudocódigo no es ejecutable en la computadora.
Entre sus características:

 Es una mezcla de lenguaje de programación y español (o cualquier otro idioma).

 Ayuda a los programadores a desarrollar algoritmos.

 Es conveniente y sencillo.

 Se emplea en la programación estructurada para realizar el diseño de un


programa, aunque no es un lenguaje de programación real.

 Los programas en pseudocódigos no se ejecutan en las computadoras, sino que


solo nos ayudan a “resolver” un programa antes de intentar escribirlo en lenguaje
de programación.

 El pseudocódigo solo consiste en caracteres, de manera que se puede introducir


los programas en pseudocódigos a la computadora mediante un programa de
edición.

 Nota: Un programa en pseudocódigo cuidadosamente preparado puede


convertirse fácilmente en su correspondiente programa en muchos casos esto se
hace mediante un simple reemplazo de las instrucciones en pseudocódigo por sus
equivalentes.

1.2. Conjunto

Definiremos a conjunto como una colección no ordenada y sin elementos repetidos. Los
usos básicos de éstos incluyen verificación de pertenencia y eliminación de entradas
duplicadas.

Clase Tipo Notas Ejemplo


Mutable, sin orden, no
set Conjuntos set([4.0, 'Carro', True])
contiene duplicados.
frozense Inmutable, sin orden, no
Conjuntos frozenset([4.0, 'Carro', True])
t contiene duplicados.

Los conjuntos pueden implementarse usando diversas estructuras de datos.


Fundamentándose en una estructura de datos ideal se comprueba si un objeto se
encuentra en el conjunto, además de activarse otras operaciones útiles tales como la
iteración sobre todos los objetos del conjunto, la realización de uniones o intersecciones
entre dos conjuntos, o la toma del complemento de un conjunto en algún dominio
limitado. Cualquier estructura de datos en cadena asociativa puede usarse para
implementar un conjunto, dejando que los juegos de claves sean los elementos del
conjunto, e ignorando los valores.

Multiconjunto:

Una variación del conjunto es el multiconjunto o bolsa, es semejante a una estructura de


datos de conjunto, pero que admite valores repetidos. Formalmente, esto se puede
considerar como una serie asociativa que mapea elementos únicos en enteros positivos,
indicando la multiplicidad del elemento, aunque la implementación propiamente dicha
pueda variar. En C++, la biblioteca de templates estándar (Standard Template Library)
ofrece la clase "multiset" para los multiconjuntos ordenados, y la STL de SGI ofrece la clase
"hash_multiset", que implementa conjuntos usando una tabla hash. Las colecciones de
Apache Commons ofrecen la interfaz Bag y SortedBag para Java; además de implementar
clases como HashBag y TreeBag, que son semejantes a otras implementaciones de
conjuntos con nombres similares.

1.3. Tablas de verdad

 Sirven como herramienta para establecer el valor de verdad de diferentes


razonamientos lógicos construidos a base de la combinación de dos o más enunciados
nucleares.

 Los enunciados nucleares se identifican con las letras del alfabeto, usualmente las de la
segunda mitad del alfabeto:  p, q, r, s, t, etc.

 Puede usarse cualquier símbolo para identificar a los enunciados nucleares.

 La tabla de verdad más simple es la que corresponde a los valores de verdad de un solo


enunciado nuclear.
 
P
V
F

 Cuando hay dos enunciados nucleares, p y q, las tablas de verdad para los cuatro
conectivos básicos (conjunción, disyunción, implicación y doble implicación), tienen cuatro
niveles (2 elevado al número de enunciados).  Se pretende en la tabla que se puedan
establecer todas las combinaciones de valores de verdad asumidos por los enunciados
nucleares.
 Los conectivos lógicos son Y (para la conjunción), O (para la disyunción inclusiva), SI…
ENTONCES (para la implicación o condicional), SI Y SOLO SI (para la doble implicación
o bicondicional).
 
Las tablas de verdad son las siguientes:
Conjunción Disyunción Implicación Doble implicación
P Q PY P Q PO P Q P P Q P SI Y
SOLO SI
Q Q ENTONC Q
V V V V V V ES Q V V V
V F F V F V V V V V F F
F V F F V V V F F F V F
F F f F F F F V V F F V
F F V

1.4. Lógica matemática


Se la define como la disciplina de matemática que se encarga de estudiar los
razonamientos y demostraciones matemáticos, teniendo como finalidad proporcionar las
herramientas para ser capaces de inferir una conclusión correcta a partir de unas
afirmaciones o proposiciones previas. La lógica computacional es la misma lógica
matemática aplicada al contexto de las ciencias de la computación.
Se considera su uso como fundamental en varios niveles:
 En los circuitos computacionales
 En la programación lógica
 En el análisis y optimización (de recursos temporales y espaciales) de algoritmos.
La lógica se extiende al corazón de la informática a medida que surge como una disciplina:
El trabajo de Alan Turing sobre el Entscheidungsproblem seguido del trabajo de Kurt
Gödel sobre teoremas incompletos. La noción de la computadora de uso general que
surgió de este trabajo fue de gran importancia para los diseñadores de la maquinaria
informática en la década de 1940. En los años 50 y 60, investigaciones predijeron que,
cuando el conocimiento humano se pudiera expresar usando la lógica con notaciones
matemáticas, sería posible crear una máquina capaz de razonar o una inteligencia
artificial. Esto fue más difícil de lo esperado a causa de la complejidad del razonamiento
humano. En la lógica de programación, un programa consiste en una colección de axiomas
y reglas. Los sistemas de programación lógicos (como Prolog) calculan las consecuencias
de los axiomas y las reglas organizadas para responder a una consulta.
Actualmente, la lógica es extensamente aplicada en los campos de inteligencia artificial y
de ciencias de computación, y estos campos proporcionan una rica fuente de problemas
en la lógica formal e informal. La teoría de la argumentación es un buen ejemplo de cómo
la lógica está siendo aplicada a la inteligencia artificial.
El sistema de clasificación computacional ACM, en particular, considera:
1. Sección F.3 en Lógicas y significados de programas y F.4 en Lógica matemática y
lenguajes formales como parte de la teoría de la ciencia de computación: este
trabajo cubre la semántica formal de los lenguajes de programación tan bien como
el trabajo de métodos formales como la lógica de Hoare.
2. Lógica booleana como fundamento en el hardware de la computadora,
particularmente la sección del sistema B.2 en la estructura aritmética y lógica,
relacionado con operadores AND, NOT y OR.
3. Muchos formalismos lógicos fundamentales son esenciales para la sección I.2
sobre inteligencia artificial, por ejemplo la lógica modal y la lógica por defecto en
los formalismos y métodos de representación del conocimiento, las cláusulas de
Horn en la programación lógica y la lógica de descripción.
Además, las computadoras se pueden usar como herramientas para los lógicos. Por
ejemplo, en lógica simbólica y lógica matemática, las pruebas de los seres humanos
pueden ser asistidas por computadoras. Usando la prueba automatizada del teorema, las
máquinas pueden encontrar y comprobar pruebas, así como trabajar con las pruebas
demasiado largas para escribir a mano.

1.5. Proposiciones
En filosofía y lógica, el término proposición se usa para referirse a:

 Las entidades portadoras de los valores de verdad.

 Los objetos de las creencias y de otras actitudes proposicionales.

 El significado de las oraciones declarativas o enunciativas, como «el Sol es una


estrella».
Intuitivamente una proposición expresa un contenido semántico a la que, bajo cierto
procedimiento acordado o prescrito, es posible asignarle un valor de verdad (usualmente
"verdadero" o "falso", aunque en lógica formal se admiten otros valores de verdad
diferentes).
Una proposición es una cadena de signos expresados en un determinado lenguaje. En
un lenguaje natural, esos signos usualmente son sonidos o caracteres escritos, mientras
que un tipo de lenguaje formalizado pueden ser signos arbitrarios. Es importante notar
que lo que hace de una cadena de signos una proposición, es que sea interpretable.
En ese sentido una proposición puede entenderse como un producto lógico del
pensamiento humano que es expresado mediante una lengua natural, aunque también
existen lenguajes formales (como la notación matemática). Una proposición expresada en
lenguaje natural deberá ser una oración gramatical o como mínimo una oración
semánticamente no vacía, mientras que una proposición expresada en un lenguaje formal
deberá ser una cadena de signos que constituya una fórmula bien formada.

1.6. Algoritmo (realizable, comprensible, preciso)


Un algoritmo constituye una lista bien definida, ordenada y finita de operaciones, que
permite encontrar la solución a un problema determinado. Dado un estado inicial y una
entrada, es a través de pasos sucesivos y bien definidos que se llega a un estado final, en
el que se obtiene una solución (si hay varias) o la solución (si es única).
Para realizar un programa bajo un lenguaje de programación determinado, debemos
tener herramientas para realizar un programa que no tenga errores. El proceso de diseñar
un programa es esencialmente un proceso creativo, ya que un programa se deriva de un
problema que queremos resolver, debemos de conocer las etapas que son comunes.
Un algoritmo es una técnica para resolver un problema mediante una serie de pasos
realizable, comprensible y preciso.

 Realizable porque debe terminar después de una cierta cantidad finita de pasos. 

 Comprensible porque Debe ser claro para quien ejecute los pasos sepa cómo y
cuándo debe iniciar y parar. 

 Preciso porque el orden de ejecución de las instrucciones debe tener claridad.


Crear un algoritmo significa orientar la solución de un problema, de modo que éste pueda
ser resuelto con la ayuda de un computador. Entonces diremos que un algoritmo es un
conjunto de pasos, instrucciones que se dan para realizar una tarea.
Bibliografía:
1. Guzmán Valle Alma Máter del Magisterio Nacional FACULTAD CIENCIAS E DE,
Espinoza C. INTRODUCCIÓN A LA PROGRAMACIÓN Introducción, fundamentos de
la Programación, herramientas de programación, metodología de Programación,
aplicaciones. 2019.

2. Tablas de verdad - ¡ING. INFORMATICA! [Internet]. [cited 2021 Jun 25]. Available
from: https://sites.google.com/site/inginformaticajhgf/tablas-de-verdad

3. Conjunto (programación) - Wikipedia, la enciclopedia libre [Internet]. [cited 2021


Jun 25]. Available from: https://es.wikipedia.org/wiki/Conjunto_(programación)

4. De Contaduría F, Administración Y. UNIVERSIDAD NACIONAL AUTÓNOMA DE


MÉXICO INTRODUCCIÓN A LA PROGRAMACIÓN. 2003.

5. McGrath M, McGrath M. Propositions [Internet]. Fall 2008 Edition. [cited 2021 Jun
25]. Available from: http://plato.stanford.edu/archives/fall2008/entries/

6. La lógica en la programación [Internet]. [cited 2021 Jun 25]. Available from:


https://programarfacil.com/blog/programacion/la-logica-en-la-programacion/

También podría gustarte