Das Deutsche Casio-Taschenrechner Forum wurde zum 31.12.2013 geschlossen und kann weiterhin als Nachschlagewerk verwendet werden.
Wer mehr erfahren möchte: Ein sehr guter Beitrag von Elias

Häufigkeit von Werten in einer Liste

Hilfe beim Programmieren in Casio Basic.

Häufigkeit von Werten in einer Liste

Beitragvon Naraku » Di 22. Dez 2009, 17:42

Hallo,

ich versuche ein Programm zu schreiben, mit welchem ich den "" berechnen kann.
Dazu muss jedem Wert in List 1 ein Rang zugeordnet werden (von klein nach groß), das habe ich noch geschafft.
Problem ist nun, dass auch Werte in der Ausgangsliste doppelt auftreten können.
Ausgangsliste 1: 1 / 3 / 3 / 5 / 8
Die zugehörigen Ränge wären nun: 1 / 2,5 / 2,5 / 4 / 5

Also wenn ein Wert mehrmals vorkommt, wird das arithm. Mittel der Ränge gebildet. Dazu muss ich wissen, wie oft jeder Wert vorkommt (rel. oder absolute Häufigkeit.). Wie kann man diese aus einer Urliste berechnen?
Über ein paar Tipps und HIlfestellungen würde ich mich freuen!

Werte können natürlich auch 3mal, oder 4mal, oder … vorkommen.
GTR ist ein CFX 9850 GB PLUS.

mfg
Naraku
 
Beiträge: 16
Registriert: Di 22. Dez 2009, 17:29

Re: Häufigkeit von Werten in einer Liste

Beitragvon elias.koegel » Di 22. Dez 2009, 22:09

Im Prinzip machst du eine äußere While-Schleife, die solange durchläuft, bis die Zählvariable die Größe der Liste erreicht hat: Do ... While A < Dim List 1
Darin kommt eine innere While-Schleife, die solange durchläuft, wie die aufeinander folgenden Zahlen gleich sind. (Ich gehe mal davon aus, dass die Liste sortiert ist.) Do ... While List 1[A] = List 1[A+1]
Innerhalb der inneren Schleife müsstest du nun deine Berechnungen machen.

0->A
Do
Do
A+1 -> A
// rechne irgendwas mit dem Wert
While List 1[A] = List 1[A+1]
While A < Dim List 1

Fehlerquellen:
- Die Liste muss mindestens 1 Element enthalten.
- Wenn das letzte Element geprüft wird und geschaut wird, ob es noch ein gleiches Nachfolgeelement gibt, kommt es zwangsläufig zu einem Zugriffsfehler. Hier muss noch ein Schutz rein. Zum Beispiel gesonderte Behandlung des letzten Elements.
Benutzeravatar
elias.koegel
 
Beiträge: 296
Registriert: Mo 8. Dez 2008, 18:16
Taschenrechner:

Re: Häufigkeit von Werten in einer Liste

Beitragvon Naraku » Di 22. Dez 2009, 22:24

Hallo und vielen Dank.
So ähnlich hatte ich es auch implementiert, nur eben mit einer For- Schleife. Ohne deine Variante implementiert zu haben, scheint es das gleiche Problem zu geben:
Das liefert nur brauchbare Ergebnisse, wenn es nur 2 Duplikate gibt. Denn die Berechnung ist ja davon abhängig, wie viele Duplikate es gibt und das weiß ich bei Element I noch nicht (wenn I+1 und I+2 die Duplikate sind).
Man muss wohl noch eine Schleife einbauen, die prüft. ob die Elemente I+2, I+3 … auch Duplikate sind. Aber … hmm.
Naraku
 
Beiträge: 16
Registriert: Di 22. Dez 2009, 17:29

Re: Häufigkeit von Werten in einer Liste

Beitragvon Naraku » Di 22. Dez 2009, 23:15

Was mir gerade aufgefallen ist: Man kann ja aus dem Menü 2 heraus Histogramme zeichnen. Dabei berücksichtigt der Rechner die Häufigkeit eines Wertes in der Liste und zeichnet es entsprechend. Also ist er ja schon in der Lage, diese zu berechnen … gibt es da irgendeine Möglichkeit, darauf zuzugreifen?
Naraku
 
Beiträge: 16
Registriert: Di 22. Dez 2009, 17:29

Re: Häufigkeit von Werten in einer Liste

Beitragvon elias.koegel » Mi 23. Dez 2009, 10:51

Benutzeravatar
elias.koegel
 
Beiträge: 296
Registriert: Mo 8. Dez 2008, 18:16
Taschenrechner:

Re: Häufigkeit von Werten in einer Liste

Beitragvon cfxm » Do 24. Dez 2009, 02:48

Zuletzt geändert von cfxm am Fr 9. Apr 2010, 13:37, insgesamt 3-mal geändert.
cfxm
 
Beiträge: 739
Registriert: Mi 1. Apr 2009, 19:39

Re: Häufigkeit von Werten in einer Liste

Beitragvon Naraku » So 27. Dez 2009, 16:12

Hallo,
habe das heute einmal übernommen, klappt wunderbar. Habe es lediglich etwas erweitert, da ich das ganze ja für 2 Listen benötige.
Vielen Dank. :)
Naraku
 
Beiträge: 16
Registriert: Di 22. Dez 2009, 17:29


Zurück zu Casio Basic (Alle Modelle, die dies unterstützen)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste

cron