Taller de robots 2.0

El Departamento de Informática del IES Gran Capitán va a organizar una serie de actividades relacionadas con la programación de robots durante la segunda edición de la “SYSMANA”. Estas actividades están destinadas a los alumnos del ciclo de Administración de Sistemas Informáticos. Entre estas actividades se está organizando un campeonato de robots.

Para que el alumnado pueda ir diseñando su propio robot, se ha creado un taller virtual de programación de robots en la plataforma moodle del ciclo.



Tuxinfo nº 18-19, Atix nº11 y Occam's Razor nº4

Os dejamos información de nuevos números de algunas de nuestras revistas electrónicas favoritas con los artículos que más nos han gustado. ¡Qué las disfrutéis!.

Tuxinfo 18:

  • Producción musical usando software libre (1ª parte).
  • Firefox 3.5.
  • ¿Cómo utilizar desde la consola los formatos .rar y .zip?

Tuxinfo 19:

  • Producción musical usando software libre (2ª parte).
  • Desmitificando postfix.
  • Develando los detalles de la última versión de KDE.

Atix 11:

  • Plataforma móvil Android.
  • Introducción al proyecto Mono.
  • Grails: Framework para el desarrollo de aplicaciones Web (4ª Parte).
  • Levantar un servidor Nagios en Ubuntu.

Occam’s Razor 4:

  • Escaneo de Puertos con nmap.
  • Historia de la criptografía.
  • Sockets RAW. Descubre como trabajan las herramientas de los hackers.
  • Reconocimiento Biométrico a Través de la Cara.
  • Con un par… de líneas. Chuletillas para hacer cosas mú rápido.
  • Un Desafío Criptográfico.

Revista ATIX sobre software libre y tecnología

A través de barrapunto he conocido la revista electrónica ATIX sobre software libre y tecnología que ya lleva publicados siete números, como apunta buenas formas la enlazamos dentro de nuestras revistas favoritas y os dejamos una selección de artículos destacados.

  • Número 1:
    • Symfony. Framework para el desarrollo de aplicaciones web.
    • Historia de GNU/Linux.
  • Número 2:
    • Openssh, la magia de la administración remota.
  • Número 3:
    • Introducción a Django (1ª parte).
    • Compartiendo archivos por medio de Apache.
  • Número 4:
    • Frontends para nuestros Shell Scripts.
    • Introducción a Django (2ª parte).
    • Conociendo PostgreSql.
    • GNU Privacy Guard. Intercambiando mensajes y documentos de forma segura.
    • Interactuando con GNU Privacy Guard.
  • Número 5:
    • Utilizando herramientas de desarrollo de C++ en Linux (1ª parte).
    • Introducción a Django (3ª parte).
    • Desarrollo ágil con Ruby On Rails (1ª parte).
    • Trac, gestión de proyectos de desarrollo software (1ª parte).
  • Número 6:
    • Utilizando herramientas de desarrollo de C++ en Linux (2ª parte).
    • Introducción a Django (4ª parte).
    • Desarrollo ágil con Ruby On Rails (2ª parte).
    • Trac, gestión de proyectos de desarrollo software (2ª parte).
  • Número 7:
    • Utilizando herramientas de desarrollo de C++ en Linux (3ª parte).
    • Desarrollo ágil con Ruby On Rails (3ª parte).
    • Empaquetando nuestras aplicaciones para distribuirlas.
    • Gestión de certificados digitales con OpenSSL (1ª parte).

Ficheros en C

Pizarra

Volvemos a la carga con los problemas relacionados con la programación en C. En este caso debeis adivinar el contenido del fichero una vez ejecutado cada programa. Para que la respuesta sea completa, hay incluir una explicación convincente.

El fichero original frw.txt contiene el siguiente texto:

abcdefghijklmn 

Caso 1:

#include <stdio.h>

int main()

{ FILE *pf; char c;

pf=fopen("frw.txt","r+b");

fread(&c,sizeof(char),1,pf);

fread(&c,sizeof(char),1,pf);

c='x';

fwrite(&c,sizeof(char),1,pf);

fclose(pf);

return 0;

}

Caso 2:

#include <stdio.h>

int main()

{ FILE *pf; char c;

pf=fopen("frw.txt","r+b");

fread(&c,sizeof(char),1,pf);

fread(&c,sizeof(char),1,pf);

fseek(pf,-1,SEEK_CUR);c='x';

fwrite(&c,sizeof(char),1,pf);

fclose(pf);

return 0;

}

Contador hacia atrás

PensandoVamos a comenzar una serie de problemas relacionados con la programación. En este primer caso, voy a exponer tres programas escritos en C y tenéis que responder razonadamente a las siguentes preguntas:

  • ¿Sabríais decir cuál será la salida de cada uno de ellos?
  • ¿Sabríais decir cuál tardará MENOS y cual MÁS en ejecutar

Sería estupendo que respondiéseis sin necesidad de ejecutar el código. Pero me conformo con que vuestra contestación sea correcta. Programa #1

#include  int main()
{
int counter=(int)1e8;
while (counter>0){
counter--;
}
printf("Contador: %d",counter);
return 0;
}

Programa #2

#include  int main()
{
float counter=(float)1e8;
while (counter>0){
counter--; }
printf("Contador: %f",counter);
return 0;
}

Programa #3

#include  int main()
{
double counter=(double)1e8;
while (counter>0){
counter--;
}
printf("Contador: %lf",counter);
return 0;
}