|
331
|
Programación / Programación C/C++ / Re: [DUDA][PROYECTO]Crear Sistema operativo independiente a Windows
|
en: 3 Abril 2011, 21:44 pm
|
Hola Simeneuro, te voy a dar algunos consejos: - Escribe y redacta correctamente. Es algo fundamental para la comunicación.
- Deja Visual Basic. La programación web de poco te va a servir, php se asemeja en la sintaxis a C/C++, pero no tiene nada que ver.
- Si tu meta es desarrollar un kernel, porque un Sistema Operativo va mucho más allá, empieza aprendiendo C. Vi algún kernel en C++, pero lo normal es que sean hechos en C.
- Vas a necesitar conocimientos de la arquitectura x86 y de ensamblador.
Saludos.
|
|
|
332
|
Programación / Programación General / Re: Pilas y Colas Pascal
|
en: 31 Marzo 2011, 13:27 pm
|
Hola vanchopper, tuve un poco de tiempo libre y echaba de menos Pascal así que hice este pequeño programa: program Colas; {$APPTYPE CONSOLE} uses SysUtils; type TPalabra = packed record Palabra: PAnsiChar; //^AnsiChar; SiguientePalabra: ^TPalabra; end; PCola = ^TPalabra; var Cola: PCola; PrimeraPalabra, UltimaPalabra: PCola; function AñadirPalabra(Palabra: PAnsiChar): boolean; var P: PCola; begin result:= false; if Palabra <> nil then begin New(P); if P = nil then begin WriteLn('No se pudo reservar memoria para la cola'); Exit; end; GetMem(P^.Palabra, StrLen(Palabra) + 1); //+1 para el caracter #0 de final de cadena if P^.Palabra = nil then begin WriteLn('No se pudo reservar memoria para la palabra'); Exit(); end; StrCopy(P^.Palabra, Palabra); if PrimeraPalabra = nil then begin Cola:= P; PrimeraPalabra:= Cola; end else begin Cola^.SiguientePalabra:= Pointer(P); Cola:= PCola(Cola^.SiguientePalabra); UltimaPalabra:= PCola(Cola^.SiguientePalabra); end; result:= true; end; end; procedure LiberarMemoria; var P, PAux: PCola; begin P:= PrimeraPalabra; while P <> nil do begin FreeMem(P^.Palabra); PAux:= PCola(P^.SiguientePalabra); Dispose(P); P:= PAux; end; end; var P: PCola; begin AñadirPalabra('Primera palabra'); AñadirPalabra('Palabra de prueba'); AñadirPalabra('qwdqwd'); AñadirPalabra('qwdqwd'); AñadirPalabra('qwdqwd'); AñadirPalabra('by Khronos'); P:= PrimeraPalabra; while P <> nil do begin WriteLn(P^.Palabra); P:= PCola(P^.SiguientePalabra); end; ReadLn; LiberarMemoria(); end.
Aquí tienes un pequeño programa que trabaja con Colas. El código está hecho en Delphi 2010, pero si trabajas con FreePascal no deberías tener ningún problema. Quizás deberías buscar en Internet información sobre las funciones New, Dispose, GetMem y FreeMem... Con estas funciones, deberías ser capaz de hacer tu ejercicio. Saludos.
|
|
|
333
|
Programación / Programación General / Re: Pilas y Colas Pascal
|
en: 30 Marzo 2011, 13:31 pm
|
Hola vanchopper, en este foro no se realizan tareas.
En el ejercicio, yo no veo que te pidan realizar la tarea con pilas o colas. La forma más sencilla sería ir guardando los caracteres en un string leyendo con Read. Luego con bucles y condicionales puedes hacer todo lo que piden. Para copiar partes de una cadena, desde una posición determinada tienes la función copy, que funciona igual que substr en otros lenguajes de programación.
Saludos.
|
|
|
334
|
Foros Generales / Foro Libre / Proyecto de fin de ciclo
|
en: 28 Marzo 2011, 21:02 pm
|
Hola, hace un mes un compañero y yo teníamos que crear una web como proyecto para la asignatura de Implementación de Aplicaciones Informáticas de Gestión. Mi clase y yo, nos pasábamos todo el día metidos en páginas tipo desmotivaciones y de memes. Así que pensamos en crear una web de ese estilo. Nos llevó cerca de un mes, la desarrollamos en MySQL y PHP con xampp. Hace una semana decidimos colgarla en Internet y compramos un hosting LAMP. Todavía tiene algún que otro fallo y está un poco verde. Espero que os guste, se aceptan críticas y sugerencias. http://aburrimientomaximo.com/Saludos.
|
|
|
335
|
Programación / Programación General / Re: Duda pascal
|
en: 26 Marzo 2011, 00:10 am
|
Hola netca, te comento:
- Dependiendo del compilador que uses, utilizar la ñ como identificador de constantes, variables y funciones puede no estar soportado. La ñ forma parte del ASCII extendido, por eso puede que te de un error ahí. Delphi 2010 si que lo admite.
- La variable contraseña la estas declarando como tipo char, que sólo almacena un caracter. Deberías declararla como un array o utilizar el tipo string.
- El fallo de la condición es ese, contraseña sólo puede almacenar un caracter, por eso la condición nunca se va a cumplir.
Saludos.
|
|
|
337
|
Programación / Programación General / Re: Pascal , ayuda
|
en: 24 Marzo 2011, 23:07 pm
|
El planteamiento del programa sería más sencillo con otro tipo de bucle, por ejemplo: con repeat..until. program Project1; var numero: integer = 3; begin repeat Write(numero, ', '); numero:= numero + 2; until numero > 27; Readln; end.
|
|
|
339
|
Programación / Programación General / Re: Otra vez al ruedo: ¿hacer un SO?
|
en: 22 Febrero 2011, 23:38 pm
|
Anay nadie habló de hacer una distribución Linux, no se de donde sacas eso. Si leyeras el post entero y vieras el código fuente que subí, sabrías que esa "cosa" (porque no es un kernel ni es nada) lo único en lo que se parece a una distro es que usa GRUB.
Lo de la posible implementación de POSIX daría compatibilidad con aplicaciones *NIX, pero no es definitivo, quedan años para llegar a algo como eso.
Saludos.
|
|
|
340
|
Programación / Programación General / Re: Otra vez al ruedo: ¿hacer un SO?
|
en: 22 Febrero 2011, 18:29 pm
|
Si, lo mejor es que nos pongamos de acuerdo en definir los tipos de datos. Definí PCHAR porque estoy acostumbrado a usarlo en Delphi, pero no tengo problema en usar * char . Creo que las más importantes son BYTE, WORD Y DWORD porque son conocidas por todo programador. Lo del makefile es buena idea, y la carpeta de documentación estaba empezando a hacerla. La documentación la estaba escribiendo con el OpenOffice para luego exportarla a formato pdf. Creo que un makefile para Windows es necesario, para mi por lo menos, ya que mi PC potente que es donde programo tiene Windows. No se si estaré conectado a esa hora, aquí en España son 4 horas más. Pero podemos comunicarnos vía mail (te lo mandé por privado). Saludos.
|
|
|
|
|
|
|