AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Inforeferat

Ein Thema von Fehlersucher · begonnen am 12. Jan 2013 · letzter Beitrag vom 14. Jan 2013
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#11

AW: Inforeferat

  Alt 12. Jan 2013, 21:22
Eine Bytefolge gehört nicht in einen String sondern in einen Stream,
eine Array of Byte oder ähnliches.
Ich war gedanklich allerdings bei LZW hängengeblieben, sorry.
Für RLE macht es natürlich Sinn nur auf die Bilddaten zuzugreifen. Da würde dann wieder der Verweis auf Scanline greifen, die Triple/QuadArrays lesen, mit letzt gelesenem vergleichen und Zähler und Array direkt wieder in einen Stream schreiben.
Falls es doch in Richtung LZW gehen sollte:
Lesen kannst Du so eine Datei z.B. in einen MemoryStream und über MemoryStream.Memory wahlfrei zugreifen. Du könntest aber auch einfach per FileStream Byte für Byte einlesen.
Für die Generierung der Tabellen wirst Du Verwaltungsstrukturen, gegf. in Form von Arrays benötigen.
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#12

AW: Inforeferat

  Alt 13. Jan 2013, 01:13
3 Jahre und kein Byte?
Das klint für mich als hättest Du zuerst die binomischen Formeln gelernt ohne das kleine 1x1 zu kennen.
Ein Byte ist die kleinste Informationseinheit. Sie wird mit 8 Bit dargestellt. Ein Bit hat den Wert 0 oder Eins. Ein Byte kann somit Werte von 0 bis 2^8 -1 annehmen.
ird das höchste Bit als Vorzeichen interpretiert, dan reicht der Wertebereich von -127 bis 127. Ein Byte kann auch als (Ansi-)Char interpretiert werden. Davon dan mehrere hintereinander sind ein string oder ein Array of Char.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#13

AW: Inforeferat

  Alt 13. Jan 2013, 01:23
Ich glaube du interpretierst da etwas zu viel in die Aussage rein.

Ich hatte auch knapp drei Jahre Informatik und wir haben überhaupt nichts sinnvolles gelernt. Streams oder byteweiser Zugriff auf Dateien? Nä. Wir fangen jetzt an "HTML zu programmieren". Erwarte nicht zu viel von Informatik in der Schule. Bei manchen Themen wäre es sogar besser gewesen, wenn wir sie gar nicht erst behandelt hätten...

Liebe Grüße,
Valentin
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#14

AW: Inforeferat

  Alt 13. Jan 2013, 01:27
Du willst mich veräppeln??

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#15

AW: Inforeferat

  Alt 13. Jan 2013, 02:42
Du willst mich veräppeln??
Ähm, nein? Mein Post war (zur Ausnahme ) völlig frei von Ironie oder ähnlichem.

Ist dir irgendwas davon jetzt wirklich neu? Ich dachte mittlerweile hätte sich sowas hier rumgesprochen.

Liebe Grüße,
Valentin
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#16

AW: Inforeferat

  Alt 13. Jan 2013, 10:08
Ich glaube, es geht nicht um die Güte des Informatik-Unterrichts in Schulen, sondern um das Referat.

Ich würde das auch nicht auf eine Datei anwenden, denn es geht im Referat nicht unbedingt um den Zugriff auf Dateien. Natürlich wäre es schick, als Essenz des Referates ein kleines Komprimierungsprogramm vorzuweisen, aber imho wäre das ein wenig viel für den Anfang.

Du kannst auf verschiedene Arten auf eine byteweise auf eine Datei zugreifen. Hier mal die Stichwörter: TFileStream (modern) per 'File Of Byte (Uralt, Einzige Möglichkeit des Ur-Pascal)' oder per 'File/BlockRead (alte Methode)'. Google mal nach diesen Stichwörtern.
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#17

AW: Inforeferat

  Alt 13. Jan 2013, 11:01
Kryptographie und Steganographie hatten wir schon so im Unterricht und fallen damit weg.
Na dann würde ich doch eher eine Simulation programmieren.
Zum Beispiel eine Wärmesimulation.
http://www.youtube.com/watch?v=TvlIfSlLB0c
Ein Array aus 100 * 100 Kacheln wobei jede Kachel eine Temperatur hat die durch die Farbe angezeigt wird.
Per Mausklick werden ein oder mehrere Kacheln erhitzt und das Programm errechnet wie sich die Wärme verteilt.
Die Berechnung ist eigentlich ziemlich einfach.
Temp_neu := Temp_alt + Summe(Temperaturdifferenz zum Nachbarn) * Faktor; Jede Kachel hat max 8 Nachbarn.
Man kann die Berechnung noch verfeinern, indem die diagonalen Nachbarn einen kleineren Faktor bekommen als die horizontalen und vertikalen Nachbarn.
Man benötigt zwei Arrays, die man jeweils im Wechsel für die alten und neuen Temperaturen benützt.
  Mit Zitat antworten Zitat
Fehlersucher

Registriert seit: 10. Nov 2012
32 Beiträge
 
#18

AW: Inforeferat

  Alt 13. Jan 2013, 12:24
Kryptographie und Steganographie hatten wir schon so im Unterricht und fallen damit weg.
Na dann würde ich doch eher eine Simulation programmieren.
Zum Beispiel eine Wärmesimulation.
http://www.youtube.com/watch?v=TvlIfSlLB0c
Ein Array aus 100 * 100 Kacheln wobei jede Kachel eine Temperatur hat die durch die Farbe angezeigt wird.
Per Mausklick werden ein oder mehrere Kacheln erhitzt und das Programm errechnet wie sich die Wärme verteilt.
Die Berechnung ist eigentlich ziemlich einfach.
Temp_neu := Temp_alt + Summe(Temperaturdifferenz zum Nachbarn) * Faktor; Jede Kachel hat max 8 Nachbarn.
Man kann die Berechnung noch verfeinern, indem die diagonalen Nachbarn einen kleineren Faktor bekommen als die horizontalen und vertikalen Nachbarn.
Man benötigt zwei Arrays, die man jeweils im Wechsel für die alten und neuen Temperaturen benützt.
Auch ein interessantes Thema.
Würdest du die Kacheln durch ein StringGrid darstellen und dann die Berechnung bei dem OnClick setzen?
Wie würdest du den Temperaturen die Farben (flüssig) zuweisen?

Noch einmal zu RLE:
RLE lohnt sich doch soweit ich weiß nicht nur für Bilder, sondern auch für Text.

Hat jemand von euch einen Ansatz für eine Routine, welche die Bytes einer beliebigen Datei in einen Stream schreibt?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#19

AW: Inforeferat

  Alt 13. Jan 2013, 12:27
TMemoryStream.LoadFromFile
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#20

AW: Inforeferat

  Alt 13. Jan 2013, 17:34
Mal eine ganz doofe Frage:

Steganographie hatten wir schon so im Unterricht
Wir haben aber nie über Bytes gesprochen, geschweige denn, wie man diese aus Dateien herausquetscht.
Kann man Steganographie behandeln ohne mit den Bytes in Berührung zu kommen?
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz