miércoles, junio 19, 2024

#001 - [Book] El diseño y análisis de algoritmos informáticos

 




#ACMTuringAward #ComputerScience
#BooksComputerScience
#BeEngineer

"El diseño y análisis de algoritmos informáticos"

Autores: Alfred V. Aho, John E. Hopcroft, Jeffrey D. Ullman


Comienza con una introducción a los conceptos básicos de algoritmos, incluyendo definiciones formales, la importancia de los algoritmos en la computación y una breve historia de su desarrollo. También se presentan técnicas fundamentales para el análisis de algoritmos, como el análisis de complejidad temporal y espacial.

  • Algoritmos de Ordenamiento y Búsqueda
  • Estructuras de datos
  • Programación Dinámica y Algoritmos Voraces
  • Algoritmos de gráficos
  • Teoría de la Complejidad
  • Relevancia y aplicaciones

lunes, agosto 08, 2022

Sistema de Acceso Controlado - TecNM - ITESI

 


Registro Publico de Derechos de Autor

 03-2022-072113283800-01

AUTORES:

·          OSCAR OMAR CUIN MACEDO

·          ÁNGEL GERARDO LOZANO VAZQUEZ

·          FRANCISCO NICOLÁS MARES ARMENTA

TÍTULO:

SISTEMA DE ACCESO CONTROLADO

RAMA:

PROGRAMAS DE COMPUTACIÓN

TITULAR:

INSTITUTO TECNOLOGICO SUPERIOR DE IRAPUATO( CON FUNDAMENTO EN EL ARTICULO 83 DE LA L.F.D.A)








lunes, abril 18, 2022

Statistics 101

This badge earner demonstrates an understanding of descriptive statistics, normal distribution, standard deviation, variance, correlation, and best practices for data visualization. Skills : Data Science, Statistics

IBM Z Xplore - Advanced

lunes, agosto 11, 2014

Mostrar el contenido de un Archivo de Datos en Lenguaje C

El siguiente Programa realizado en Lenguaje ANSI-C  demuestra como abrir un Archivo de
texto llamado DATOS.DAT. El Archivo es aperturado en modo lectura "r" en la la función
fopen( ).


// Francisco Nicolas Mares Armenta
// ITESI
//--------------------------------

#include <stdio.h>
#include <stdlib.h>

FILE *ConectFILE(FILE*  ptrF,
                 char   StrNombre[20], 
                 char   StrModo [5]   ) {
   ptrF = fopen ( StrNombre, StrModo );
   if ( NULL == ptrF)  {
      printf("\n Operacion Fallida a conectar");
      printf("\n el archivo %s", StrNombre);
      printf("\n en Modo %s", StrModo);
      exit(0);
   }
   else {
      printf("\n Operacion EXITOSA al conectar");
      printf("\n el archivo %s", StrNombre);
      printf("\n en Modo %s", StrModo);
      return ptrF;
   }  
}

//-------------------------------------------

int main(int argc, char *argv[])
{
FILE *ptrFILE;
char Nombre[50];
int Calif1, Calif2, Calif3;
   ptrFILE = ConectFILE(ptrFILE,"DATOS.DAT","r");   
   while (!feof(ptrFILE) ){
      fscanf(ptrFILE, "%s%d%d%d"  ,
             Nombre, &Calif1, &Calif2, &Calif3);
      printf("\n N :[%s] ", Nombre);
      printf("\t C1:[%d] ", Calif1);
      printf("\t C2:[%d] ", Calif2);
      printf("\t C3:[%d] ", Calif3);
   }
   fclose(ptrFILE);
   system("PAUSE"); 
   return 0;
}



//------ fin del Archivo ------


------------------------------------------------
A continuación se muestra el contenido del Archivo DATOS.DAT

Caro   100  99 100
Irene  100 100 100
Carlos  90  85  90
Angel   90  80  95
Yael    90 100  80
Esther  90  90  90
Omar    80  80  80
Lola    85  85  85
Raquel  80  80  80
Ediel   70  70  70
Gaby    90  95  80
Antonio 80  90  80
Edgar   95  80 100
Selene   85 90  80
Eby      80 80  80
Raúl     75 80  75
Ramses   70 60  80
Alfonso  80 70  80
Yessica  80 80  80
Juan     95 90  90
Rubi     90 90  90
Susana   80 80  80
Tania    70 80  75
Pedro    75 85  70
Lolis    95 90 100
Monica  100 100 100
Amairani 80 80  80
Fabian   80 80  80
Carlos   70 75  79


------------------------------------------------

Salida del PROGRAMA



------------------------------------------------

Licencia de Creative Commons
"Mostrar el contenido de un Archivo de Datos en Lenguaje C" by Francisco Nicolás Mares Armenta is licensed under a Creative Commons Reconocimiento-NoComercial 4.0 Internacional License.
Creado a partir de la obra en http://fconicolasmares.blogspot.com/2014/08/manejo-de-archivos-001.html.

jueves, abril 25, 2013

Self-reproducing program in C



I started to learn the language C in the Summer of 1993. After my first course in the Pascal Programming Language. My first book which I had contact was C Programming Language by K & R.  

With the passage of time had contact with the literature of other authors such as Herbert Schildt, Kris Jamsa, Chris H. Pappas & William H Murray, Ted Faison. 


For years I had seen the term "obfuscated programming in C " in the C programming books, During the Summer of 2002 when I taugh the Systems Programming Course (Design Compiler). In-depth study of recursive descendent grammars, I began to read the works of Dennis Ritchie and Ken Thompson.

Some day when i visited  the Website of Ken Thompson ( http://cm.bell-labs.com/who/ken/trust.html )   I read this..."As a programmer, I write programs. I would like to present to you the cutest program I ever wrote. I will do this in three stages and try to bring it together at the end. In college, before video games, we would amuse ourselves by posing programming exercises. One of the favorites was to write the shortest self-reproducing program."

Something that caught my attention; then I read again all the books about:

  • Compiler Design.
  • Language Grammars.
  • Programmig Languages.
  • Structured Programming.

Books that could  help me  to explane How to write complex expressions and sentences  with the Grammar of C. Authors always share something about contest obfuscated programming in C in their books.


This was the first time I had contact with this intereresante term programming. Make a program that prints itself, How? I had never tried to do something like that. Then compiler and books in hand started to decipher it.


The International Obfuscated C Code Contest

http://www.nyx.net/~gthompso/quine.htm




Example of Code in C (Self-Reproducing Program)


//
 {char *c="main(){char *c=%c%s%c;printf(c,34,c,34);}";printf(c,3>4,c,34);}
//




  • The IOCCC:

    • To write the most Obscure/Obfuscated C program within the rules.
    • To show the importance of programming style, in an ironic way.
    • To stress C compilers with unusual code.
    • To illustrate some of the subtleties of the C language.
    • To provide a safe forum for poor C code. :-)
















    martes, abril 23, 2013

    Curso 2012 Programacion en Lenguaje Go by Google



    Alumnos de Ing. Sistemas- Primer Grupo  en ITESI en Desarrollar Aplicaciones con el Lenguaje de Programacion GO de Google- Mayo 05 de 2012 - Sesion 002 - (configuracion de GO portable).







    martes, marzo 19, 2013

    GECCAI-- Taller Programación de Robots LEGO

    En Agosto de 2011 el El Instituto Tecnológico Superior de Irapuato (ITESI) fue la Sede del Taller de Programación de Robots NTX LEGO Formación a docentes de los Programas de Ing. en Informatica e Ing. en Sistemas. El curso estuvo organizado por el "Grupo de Estudio en Ciencias de la Computación Aplicadas a la Ingeniería" (GECCAI). 

    Dentro de los logros alcanzados con el desarrollo de este proyecto destaca la posibilidad de introducir a los alumnos del ITESI en el desarrollo de Algoritmos implementados en  PROTOTIPOS PROGRAMABLES, los cuales tienen múltiples aplicaciones en distintos campos como lo son Automatización, Telemetria.


    GECCAI -- ITESI Taller de Formación a Cuadros Directivos de la Educación Preescolar en el modelo curricular Computer Science Program K-12 de ACM.

    El Instituto Tecnológico Superior de Irapuato (ITESI) fue la Sede del Taller de Formación a Cuadros Directivos  de la Educación Preescolar en el  modelo curricular  Computer Science Program  K-12 de ACM.

    En el taller se utilizaron los Robots NTX LEGO, se armaron modelos y se desarrollaron practicas y modelos de enseñanza basados en competencias

    El curso estuvo a cargo de nuestro "Grupo de Estudio en Ciencias de la Computación Aplicadas a la Ingeniería" (GECCAI). Participaron como instructores:

    • Ing. Luis Moisés Burgara Lopéz [Docente de Tiempo Completo del Programa de Ing. en Informática]
    •  MC Eduardo Garcia Herrera [Docente de Tiempo Completo del Programa de Ing. en Sistemas] y 
    • MC. Francisco Nicolás Mares Armenta [Coordinador del Programa de Ing. en Informática] del ITESI.


    Asistió la Jefe de Sector Laura Losoya Ponce y sus Supervisores de la Delegación VI, para poder desplegar el modelo curricular con los Directores de los centros de enseñanza de Nivel Preescolar. 

    El modelo intenta desarrollar las competencias en las Ciencias de la Computación a los docentes  y niños. De esta manera podrán  dominar el uso de tecnologías de la información

    .


    lunes, marzo 18, 2013


    ITESI sede del Concurso de Programación ACM ICPC México Occident & Pacific


    Irapuato, Gto., viernes 5 de octubre de 2012.
    El Instituto Tecnológico Superior de Irapuato (ITESI) fue una de las sedes del Concurso de Programación “ACM ICPC México Occident & Pacific” que se efectuó el pasado 29 de septiembre. El ITESI fue la sede regional para este reconocido concurso que es organizado en México por el Instituto Tecnológico de Estudios Superiores de Occidente (ITESO).
    En dicha competición participaron 66 estudiantes provenientes del Instituto Tecnológico Superior de Guanajuato (ITESG), la Universidad Tecnológica de León (UTL), el ITESI campus Purísima del Rincón y el propio ITESI Irapuato; cabe mencionar que además de los estudiantes de ITESI, también participaron 7 profesores de las carreras de Ingeniería en Sistemas Computacionales e Ingeniería Informática como instructores.
    Este Concurso de Programación tiene varias eliminatorias regionales hasta llegar a la fase internacional; nuestro país pertenece a la zona México & Centro América, cuyos ganadores compiten contra los ganadores del resto de zonas del mundo; en la última edición, los triunfadores fueron los representantes de la St. Petersburg State University of ITMO.
    Hasta el momento se está a la espera de conocer a los ganadores de la etapa regional llevada a cabo en ITESI que participarán en la siguiente etapa del concurso a realizarse en Guadalajara los próximos 9 y 10 de noviembre.

    [Blog] La pluma del Búho:Estudiantes de Ingeniería en Sistemas Computacionales desarrollan proyecto con “Drones”


    Estudiantes de Ingeniería en Sistemas Computacionales desarrollan proyecto con “Drones”


    Irapuato, Gto. 1 de marzo de 2012.

    Estudiantes de la Ingeniería en Sistemas del Instituto Tecnológico Superior de Irapuato desarrollaron y elaboraron un dirigible controlado remotamente por Micro controladores que envían datos mediante tarjetas XBee, al utilizar un microcontrolador PIC16F877 en una combinación de tarjetas de transmisión XBee, en el cual es posible crear diseños de comunicación a través de conexiones inalámbricas.

    Esta tecnología es importante, ya que gracias al trabajo con pequeños circuitos se han podido crear y diseñar grandes herramientas de transmisión de señales a pequeña escala. Las aplicaciones de los micro controladores ejercieron un efecto positivo en el avance tecnológico ya que al implementarles código y decisiones se puede confiar en ellos. A través de un dirigible a escala, este proyecto muestra la implementación de la electrónica y la capacidad de los circuitos electrónicos y se implementa el uso de micro controladores y de tarjetas de envió de datos Xbee.

    Los estudiantes responsables del proyecto son Raúl Barbosa Ávila y Abraham Torres Ayala, quienes presentaron  y publicaron con éxito su trabajo durante la reunión de Potencia, Electrónica y Computación (ROPEC).

    Dentro de los logros alcanzados con el desarrollo de este proyecto destaca la posibilidad de introducir a los alumnos del ITESI en el desarrollo de Drones (Vehículos aéreos no tripulados), los cuales tienen múltiples aplicaciones en distintos campos como lo son vigilancia, control de tráfico, detección de incendios, seguimiento de la deforestación de bosques entre otros.

    Los jóvenes estudiantes fueron asesorados por el Ing. Francisco Nicolás Mares Armenta, el M. en C. Daniel Jorge Montiel García, y la M. en C. Nelly Beatriz Santoyo Rivera profesores de la carrera de Ingeniería en Sistemas, además del M. en C. Miguel Ángel Guzmán Altamirano de la carrera de Electrónica.

    CICLO DE CONFERENCIAS POR INTERNET II

    Ciclo de Conferencias 2011
    "PERSPECTIVAS DE LA INVESTIGACIÓN EN EL SNEST"
    El ciclo de conferencias Perspectivas de la investigación en el Sistema Nacional de Educación Superior Tecnológica (SNEST) tiene como propósitos: contribuir a la creación y el fortalecimiento de grupos y redes de investigadores dentro del SNEST y con grupos externos de instituciones de educación superior nacionales y extranjeras; promover la utilización de las TIC en los procesos de investigación y divulgar el conocimiento generado en nuestras instituciones.

    El SNEST, a junio de 2010, está constituido por 249 instituciones, de las cuales 114 son Institutos Tecnológicos federales, 129 Institutos Tecnológicos Descentralizados, cuatro Centros Regionales de Optimización y Desarrollo de Equipo (CRODE), un Centro Interdisciplinario de Investigación para el Desarrollo de la Educación Tecnológica (CIIDET) y un Centro Nacional de Investigación y Desarrollo Tecnológico (CENIDET).

    En estas instituciones se atiende a una población de 387,414 estudiantes en licenciatura y posgrado en todo el territorio nacional, incluido el Distrito Federal. Estos estudiantes representan el 13.1 % de la matrícula nacional de licenciatura y el 37.4 % de la matrícula nacional de ingeniería. Esto es, prácticamente cuatro de cada diez ingenieros en México son egresados del SNEST.

    Este ciclo, basado en la experiencia exitosa de los tres anteriores que el CENIDET ha ofrecido, integra conferencias de nueve áreas diferentes y seis instituciones del SNEST, las cuales en su conjunto son solo una pequeña muestra de la investigación que se realiza en el Sistema como respuesta a los requerimientos de las diversas regiones del país en que se ubican nuestras instituciones.

    Aunque es solo una muestra, el conjunto de conferencias permiten observar los temas, enfoques y metodologías que los profesores - investigadores del SNEST han adoptado en sus diferentes disciplinas, para desde ellas aportar soluciones a las problemáticas que atienden.

    El ciclo es también una muestra del aprovechamiento de las Tecnologías de la información y las comunicaciones (TIC) para promover y dinamizar prácticas educativas que perfeccionen nuestros procesos de formación.

    Organización de las conferencias

    Las conferencias se realizarán en cada instituto Tecnológico de manera convencional y serán transmitidas por internet 2 a las salas inscritas en el Rapla de la UNAM. La entrada a las conferencias es libre, para conocer la ubicación exacta de la sala de videoconferencias dónde se realizará, deberán ponerse en contacto con el coordinador de cada institución.

    Coordinadores:
              Dr. Federico del Razo DGEST
              Dr. Manuel Juárez Pacheco. CENIDET.


    Coordinadores de las sedes:
              IT. Minatitlan: MC. María Hernández Nieto, maloheni@hotmail.com
              IT. Celaya: Jesús Villegas Saucillo, jevisa@itc.mx
              IT. Apizaco: MC. Nicolás Alonzo Gutiérrez: ccomputo@itapizaco.edu.mx
              ITESI Irapuato: MC. Francisco Nicolas Mares Armenta, frmares@itesi.edu.mx
              IT. Costa Grande: MC. Joselito Chue Mora: josner06@hotmail.com