Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

wortbildungen in qbasic

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Michael Schubert



Anmeldungsdatum: 10.03.2005
Beiträge: 1
Wohnort: Dessau

BeitragVerfasst am: 10.03.2005, 21:47    Titel: wortbildungen in qbasic Antworten mit Zitat

hallo,
ich bin hier vollkommen neu. ich suche ein programm, geschrieben in qbasic, welches aus einem wort beliebiger länge alle möglichen wortbildungen erzeugt.
zb. aus eis wird sie, ise, esi.
ich habe es schon einmal versucht komme aber nicht weiter weil mir einfach die erfahrung fehlt.
es sollte folgendermassen ablaufen.
worteingabe
anzeige der möglichen wortbildungen in zahl
zeigen der wörter in zb 10 ner gruppen
auf tastendruck die nächste gruppe usw. bis zum ende.

danke
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 10.03.2005, 22:19    Titel: Antworten mit Zitat

Hm....

Also, ich würde das in etwa so organisieren:
Zerlegen des eingegebenen Strings in ein Array:

Code:

DIM laenge AS INTEGER
INPUT "Geben Sie ein Wort ein", Wort$

laenge = LEN(Wort$)
DIM Buchstaben(1 TO laenge) AS STRING *1

FOR i = 1 TO laenge
 Buchstaben(i) = MID$(Wort$, i, 1)
NEXT


Die Errechnung der Möglichkeiten geht ganz einfach, über die Fakultät. Da QB diesen Operator nicht bieten, muss man ihn sich selbst nachschreiben, am besten als FUNCTION:

Code:

DECLARE FUNCTION Fak& (Zahl AS INTEGER)

DIM Moeglichkeiten AS LONG

' eigentlicher Programmcode

Moeglichkeiten = Fak(laenge)

' Weiterer Programmcode...


FUNCTION Fak& (Zahl AS INTEGER)
DIM tmp AS LONG
tmp = 2
FOR i = 3 TO Zahl
 tmp = tmp * i
NEXT
Fak& = tmp
END FUNCTION



So, jetzt zum Wensentlichen:
Die Wortneubildung:

Code:

DIM idx AS LONG

' die oben angegebenen Codes...


DIM NeueWoerter (1 TO Moeglichkeiten) AS STRING * laenge
DIM tmp AS STRING * 1
FOR i = 1 TO laenge
 tmp = Buchstaben(i)
 FOR j = 1 TO laenge
   IF NOT(i = j) THEN
    idx = idx + 1
    MID$(NeueWoerter(idx), i, 1) = Buchstaben(j)
   END IF
 NEXT
NEXT



hmmm.... ich glaube, das könnte funktionieren....
habs aber nicht getestet.
auf jeden fall kommt als ergebnis nicht mehr das wort raus, das eingegeben wurde.

Probiers einfach mal aus.

Für die seitenweise ausgabe:
Code:

DIM ShowIdx AS LONG
FOR i = 0 TO (idx \ 10)
 FOR j = 1 TO 10
  ShowIdx = (i * 10) + j
  IF ShowIdx > Idx THEN EXIT FOR
  LOCATE j + 5, 5
  PRINT NeueWoerter(ShowIdx) + SPACE$(80)
 NEXT
NEXT




Viel Spaß damit!


Wie gesagt, ich bin mir nicht ganz sicher, ob das funktioniert, aber es sollte doch einmal eine Basis sein, auf der man weiterarbeiten kann.


Übrigens:
Kann sein, dass ich mich irre, aber das hier ist nicht ganz der Sinn dieses Forums.
Hierher kommen Progger, die selbst versuchen, etwas auf die Beine zu stellen, vllt für eigenwerbung, vllt um die eine oder andere Codestelle probelesen zu lassen.
Generelle fragen, die unter das Thema "Wie geht ...." fallen, kommen meistens ins Programmiererforum.

Naja, egal happy


Bis bald mal wieder *g*


Ciao
_________________
fully biological degradable

Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 10.03.2005, 22:48    Titel: Antworten mit Zitat

Ganz recht. lächeln Und ab damit ins Programmierforum... zwinkern
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz