allgemein:test:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| allgemein:test:start [25.09.2025 09:12] – [Aufgabe2] lars | allgemein:test:start [06.11.2025 11:03] (aktuell) – [Programmierung] lars | ||
|---|---|---|---|
| Zeile 258: | Zeile 258: | ||
| ===== Aufgabe2 ===== | ===== Aufgabe2 ===== | ||
| + | ===== Beispielrechnung: | ||
| + | |||
| **Gegeben: | **Gegeben: | ||
| + | * Format: 26 × 38 cm | ||
| + | * Auflösung: 600 dpi | ||
| + | * Umrechnungsfaktor: | ||
| + | * Übertragungsrate: | ||
| + | |||
| + | ---- | ||
| + | |||
| + | **1. Umrechnung in Zoll** | ||
| + | |||
| + | * 26 cm ÷ 2,54 ≈ **10,24 Zoll** | ||
| + | * 38 cm ÷ 2,54 ≈ **14,96 Zoll** | ||
| - | * **Format:** 26 cm × 38 cm | + | ---- |
| - | * **Auflösung: | + | |
| - | * **Umrechnungsfaktor: | + | |
| - | * **Übertragungsrate: | + | |
| - | --- | + | **2. Pixelanzahl berechnen** |
| - | ### 1. Größe in Pixeln berechnen | + | * 10,24 Zoll × 600 dpi = **6144 px** |
| + | * 14,96 Zoll × 600 dpi ≈ **8976 px** | ||
| + | * Gesamt: 6144 × 8976 ≈ **55.161.600 Pixel** | ||
| - | $$ | + | ---- |
| - | 26 \,\text{cm} = \frac{26}{2, | + | |
| - | $$ | + | |
| - | $$ | + | **3. Speicherbedarf** |
| - | 38 \,\text{cm} = \frac{38}{2, | + | |
| - | $$ | + | |
| - | Pixelanzahl: | + | === Farbscan (24 Bit / 3 Byte pro Pixel) === |
| + | * 55.161.600 × 3 = **165.484.800 Byte** | ||
| + | * Umrechnung in MiB: 165.484.800 ÷ 1.048.576 ≈ **157,8 MiB** | ||
| - | $$ | + | === Schwarz-Weiß-Scan (1 Bit pro Pixel) === |
| - | 10,24 \times | + | * 55.161.600 × 1 Bit = **55.161.600 Bit** |
| - | $$ | + | * Umrechnung in Byte: ÷ 8 = **6.895.200 Byte** |
| + | * Umrechnung in MiB: 6.895.200 ÷ 1.048.576 ≈ **6,6 MiB** | ||
| - | $$ | + | ---- |
| - | 14,96 \times 600 \approx 8976 \, | + | |
| - | $$ | + | |
| - | Gesamtpixel: | + | **4. Übertragungszeit** |
| - | $$ | + | * Leitung: 150 Mbit/s = 150.000.000 Bit/s ÷ 8 = **18.750.000 B/s** |
| - | 6144 \times 8976 \approx 55.161.600 \,\text{Pixel} | + | * In MiB/s: 18.750.000 ÷ 1.048.576 ≈ **17,87 MiB/s** |
| - | $$ | + | |
| - | --- | + | === Farbscan === |
| + | * Zeit = 157,8 ÷ 17,87 ≈ **8,83 s** | ||
| + | * Aufgerundet: | ||
| - | ### 2. Speicherbedarf berechnen | + | === Schwarz-Weiß-Scan === |
| + | * Zeit = 6,6 ÷ 17,87 ≈ **0,37 s** | ||
| + | * Aufgerundet: | ||
| - | Normalerweise rechnet man mit **24 Bit = 3 Byte pro Pixel** (Farbbild). | + | ---- |
| - | $$ | + | **Endergebnis: |
| - | 55.161.600 \times 3 = 165.484.800 \, | + | * Farbscan: **≈ 158 MiB → 0:09 Min:Sek** |
| - | $$ | + | * SW-Scan: **≈ 6,6 MiB → 0:01 Min:Sek** |
| - | In MiB (1 MiB = 1.048.576 Byte): | ||
| - | $$ | + | ---- |
| - | \frac{165.484.800}{1.048.576} \approx 157,8 \, | + | |
| - | $$ | + | |
| - | Also **~158 MiB pro Scan**. | ||
| - | --- | + | ==== Programmierung ==== |
| - | ### 3. Übertragungszeit berechnen | + | <code csharp> |
| + | string message = "Die Systemauslastung war an mehr als 18 Stunden höher als 80 %."; // Text Messagebox | ||
| + | string title = " | ||
| + | int cpuutil | ||
| + | int cpulimit | ||
| + | int sumstd | ||
| - | 150 Mbit/s = | + | // Array mit Testdaten (24 Stunden) |
| + | int[] usedCPU | ||
| + | { 33, | ||
| - | $$ | + | // ---------------- Erweiterung MONCPU ---------------- |
| - | 150 \times 10^6 \,\text{bit/s} = 18,75 \,\text{MB/s} \quad (1\,B = 8\,bit) | + | cpulimit = 80; // Grenzwert festlegen |
| - | $$ | + | |
| - | oder in MiB/s: | + | for (int i = 0; i < usedCPU.Length; |
| + | { | ||
| + | cpuutil = usedCPU[i]; | ||
| + | if (cpuutil > cpulimit) | ||
| + | { | ||
| + | sumstd = sumstd + 1; // Zähler erhöhen | ||
| + | } | ||
| + | } | ||
| - | $$ | + | // Meldung nur ausgeben, wenn mehr als 18 Stunden über 80 % |
| - | \frac{18.750.000}{1.048.576} \approx 17,87 \, | + | if (sumstd > 18) |
| - | $$ | + | { |
| + | MessageBox.Show(message, title); | ||
| + | } | ||
| + | </ | ||
| - | Zeit: | + | <code c> |
| + | #include < | ||
| - | $$ | + | int main() |
| - | \frac{157, | + | char message[] = "Die Systemauslastung war an mehr als 18 Stunden höher als 80 %."; |
| - | $$ | + | char title[] |
| + | int cpuutil | ||
| + | int cpulimit | ||
| + | int sumstd | ||
| - | Aufgerundet: | + | // Array mit Testdaten (24 Stunden) |
| + | int usedCPU[24] = {33, | ||
| + | | ||
| - | --- | + | // Alle 24 Stunden prüfen |
| + | for (int i = 0; i < 24; i++) { | ||
| + | cpuutil = usedCPU[i]; | ||
| + | if (cpuutil > cpulimit) { | ||
| + | sumstd++; | ||
| + | } | ||
| + | } | ||
| - | ✅ **Endergebnis: | + | // Meldung ausgeben, wenn mehr als 18 Stunden über 80 % |
| + | if (sumstd > 18) { | ||
| + | printf(" | ||
| + | } | ||
| - | * Dateigröße: | + | return 0; |
| - | * Übertragungszeit bei 150 Mbit/s: **0:09 Min:Sek** | + | } |
| + | </code> | ||
| - | --- | + | ---- |
| - | Soll ich dir das auch gleich als kleine Rechenvorlage in **DokuWiki-Syntax** ausformulieren, | + | < a2s > |
| + | / | ||
| + | | | ||
| + | +-- .env | ||
| + | +-- docker-compose.yml | ||
| + | +-- data/ | ||
| + | +-- backup/ | ||
| + | +-- scripts/ | ||
| + | </ | ||
allgemein/test/start.1758784356.txt.gz · Zuletzt geändert: von lars