Maak een eigen adressenboek programma

Opgaven en tips voor programmeerwedstrijden.

Maak een eigen adressenboek programma

Berichtdoor Abcott » za jun 09, 2007 9:00 pm

Is het een goed idee?
Elke beginner start bijna automatisch toch altijd al
met het programmeren van zijn eigen adressenboek programma.
Dat lijkt mij zo iets als elke leerling pottenbakker die
gelijk met een superkruik wil starten, en het eerste voorwerp
blijkt meestal te eindigen als een soort asbak.

Misschien is het dus de ultieme uitdaging, om echt een
adressenboek programma te schrijven.

Abcott
Avatar gebruiker
Abcott
 
Berichten: 115
Geregistreerd: wo mei 25, 2005 9:58 pm

Berichtdoor Gordon » za jun 09, 2007 10:24 pm

Dit lijkt mij voor iedereen best te doen.
Hier volgt voor de starters een minimaal programma opzet.

1. Maak een GUI waarin een lijst met namen wordt getoond (listbox)
2. Selectie van een naam toont de bijbehorende gegevens van die naam
in een textbox (waarin nites gewijzigd kan worden)
3. Plaats o.a. een knop (Aanvullingen)

4. (Aanvullingen)
5. Toon een invulformulier
6. Knoppen o.a. <Vorige> <volgende><stoppen>

7. Toon in het invulformulier een RECORD
(bij gebruik van een Random Acces File) of
de items uit een APPEND file.

Gordon.
Avatar gebruiker
Gordon
Site Admin
 
Berichten: 684
Geregistreerd: zo mei 22, 2005 12:50 am

Berichtdoor anthonio » zo jun 10, 2007 9:27 am

mijn bijdrage: zie zip file.

Copyrights zijn van andy Software (mijzelf dus) nog de source code, nog de foto's mogen niet gebruikt worden zonder toestemming van Andy Software (ikzelf dus).
Bijlagen
e-phonebook.zip
(19.96 KiB) 295 keer gedownload
Dual boot: Ubuntu 8.04 - WIndows XP SP2 (via VMware) - Windows Vista 32bit - Toshiba L40 - Dual Core @ 1,76GHz - 1GB RAM - 120GB HDD - VDSL Connection
Avatar gebruiker
anthonio
 
Berichten: 281
Geregistreerd: zo mei 20, 2007 9:58 pm

Berichtdoor Gordon » di jun 12, 2007 9:43 pm

Ik heb in mijn "archief" gekeken.
Vier verschillende versies van dergelijke programma's gevonden.
Ik heb zelf één volledig eigen compositie en een "onvolledige"

Misschien moeten we de uitdaging groter maken.
- Maximale listing 1024 bytes.

Een "barebone" programma is voldoende.

Gordon.
Avatar gebruiker
Gordon
Site Admin
 
Berichten: 684
Geregistreerd: zo mei 22, 2005 12:50 am

Berichtdoor Gordon » do jun 21, 2007 2:33 pm

Het is volgens mij best te doen.
Hier volgt een voorbeeld:

http://justbasic.wikispaces.com/Simple_Database_Framework#WithGOSUB

Dit was niet afgesproken met Stephan :D

Gordon
Avatar gebruiker
Gordon
Site Admin
 
Berichten: 684
Geregistreerd: zo mei 22, 2005 12:50 am

Berichtdoor Gordon » vr jun 22, 2007 10:47 pm

Hier is een begin:
Deze file is nog iets groter dan 1024 bytes

Code: Selecteer alles
    nomainwin

    textbox #t.t1,  100,  25, 150,  25
    textbox #t.t2,  100,  75, 150,  25
    textbox #t.t3,  100, 125, 150,  25
    button #t.b1,"<--",[bC1], UL, 100, 180
    button #t.b2,"-->",[bC2], UL, 200, 180
    button #t.b3,"Append   ",[append], UL, 150, 280
    open "NAW bestand" for window as #t
    #t, "trapclose [quit]"


    open "databoss3.dat" for random as #db len=200
    field #db,_
        80 as Naam$,_
        80 as Adres$,_
        40 as Tel$
        if lof(#db)/200 >0 then nRec = 1 :gosub [getR]
        wait

[bC1]
        if nRec -1 >0 then
        gosub [putR] :nRec = nRec-1 :gosub [getR]
        end if
        wait

[bC2]
        if nRec + 1 <= lof(#db)/200  then
        gosub [putR] :nRec = nRec+1: gosub [getR]
        end if
        wait

[append]
        nRec = lof(#db)/200 +1 :gosub [putR]
        #t.b3 "Append "+str$(nRec +1)
        wait



[getR]
            get #db, nRec
            #t.t1 Naam$
            #t.t2 Adres$
            #t.t3 Tel$
'print "RGET ";nRec;Naam$

            return
[putR]
            #t.t1 "!contents? Naam$"
            #t.t2 "!contents? Adres$"
            #t.t3 "!contents? Tel$"
            put #db, nRec
'print "RPUT ";nRec;Naam$

            return


[quit]
    close #db
    close #t
    end



Gordon
Avatar gebruiker
Gordon
Site Admin
 
Berichten: 684
Geregistreerd: zo mei 22, 2005 12:50 am

Berichtdoor Abcott » zo jun 24, 2007 3:44 pm

Ik dacht eerst ergens anders aan.
Ik dacht toch eerder aan een programma zoals dat van Antonio.
Maar dan met een andere indeling.

Maar dit kan ook.
Het kan als basis dienen voor het leren omgaan met
RAF (willekeurig toegankelijke bestanden).
Misschien zou Gordon er nog op kunnen wijzen dat
het werken met bestanden bij Liberty BASIC eenvoudiger
is dan bij QBASIC (geen CVS, LSET, RSET, CVI, MKI enz.)
Maar ook geen TYPE as.

Abcott
Avatar gebruiker
Abcott
 
Berichten: 115
Geregistreerd: wo mei 25, 2005 9:58 pm

Berichtdoor anthonio » ma jun 25, 2007 2:14 pm

lol, het is kiezen of delen.
de zogenaamde "eye candy" hebben het geheugen probleem.
de zogenaamde "simple looking" progs hebben dan weer dat ze er niet aantrekkelijk uitzien.
Dual boot: Ubuntu 8.04 - WIndows XP SP2 (via VMware) - Windows Vista 32bit - Toshiba L40 - Dual Core @ 1,76GHz - 1GB RAM - 120GB HDD - VDSL Connection
Avatar gebruiker
anthonio
 
Berichten: 281
Geregistreerd: zo mei 20, 2007 9:58 pm

Berichtdoor Gordon » za aug 18, 2007 10:08 am

Zo ziet het scherm van de listing hierboven eruit.

Afbeelding


Gordon
Laatst bijgewerkt door Gordon op za jan 05, 2008 3:22 pm, in totaal 3 keer bewerkt.
Reden: Testen nieuw plaatje
Avatar gebruiker
Gordon
Site Admin
 
Berichten: 684
Geregistreerd: zo mei 22, 2005 12:50 am

Berichtdoor anthonio » zo aug 19, 2007 1:32 pm

lol, inderdaad, simpel en het doet wat het doet.
Dual boot: Ubuntu 8.04 - WIndows XP SP2 (via VMware) - Windows Vista 32bit - Toshiba L40 - Dual Core @ 1,76GHz - 1GB RAM - 120GB HDD - VDSL Connection
Avatar gebruiker
anthonio
 
Berichten: 281
Geregistreerd: zo mei 20, 2007 9:58 pm


Keer terug naar Uitdagingen en wedstrijden

Wie is er online

Gebruikers op dit forum: Geen geregistreerde gebruikers. en 2 gasten

cron