Informatik

4.896 Beiträge

Ti NSpire CX II-T CAS, Programm läuft nicht, was tun?

Ich hab ein Programm, das endet immer nach dieser Meldung:

#Running Spezif_Waermekapazitaet.py

from Spezif_Waermekapazitaet import *

Ich verstehe nicht warum, kennt sich da wer aus?

Das Programm ist:

from ti_system import *

# Funktion zur Abfrage der Variablen

def frage_variable(prompt):

  return float(input(prompt))

def main():

  while True:

    print("Berechnung von X = a - (3 * c * d) / f")

    print("Start mit 'Enter', Abbruch mit 'Esc'")

     

    # Warte auf Startbefehl (Enter-Taste)

    key = get_key()

    if key == "Enter":

      clear_screen()

       

      # Abfrage der Variablen

      a = frage_variable("Gib den Wert für a ein: ")

      c = frage_variable("Gib den Wert für c ein: ")

      d = frage_variable("Gib den Wert für d ein: ")

      f = frage_variable("Gib den Wert für f ein: ")

       

      # Überprüfung, ob f nicht null ist

      if f == 0:

        print("Fehler: Division durch Null (f darf nicht 0 sein).")

      else:

        # Berechnung von X

        X = a - (3 * c * d) / f

         

        # Rundung auf 3 Nachkommastellen

        X_rounded = round(X, 3)

         

        # Ausgabe des gerundeten Ergebnisses

        print("Das Ergebnis X beträgt: {X_rounded}",f)

         

    # Abbruch des Programms mit Esc-Taste

    elif key == "Esc":

      print("Programm beendet.")

      break

if __name__ == "__main__":

  main()

Ist dieses Struktogramm passend für mein Merge-Sort Code?

Ist das folgende Struktogramm, welches ich erstellt habe, passend zu meinem Java Merge-Sort Code oder muss ich noch was nachbessern?

Code:

import java.util.Arrays;
import java.util.Random;

public class MergeSortWithMetrics {
  // Zähler für Sortierschritte
  static long comparisons = 0;
  static long assignments = 0;

  public static void main(String[] args) {
    // Konfiguration: Array-Größe und Zahlbereich
    int arraySize = 10000; // Größe des Arrays
    int numberRange = 214748647; // Bereich der Zufallszahlen (0 bis numberRange)
    boolean ArrayAusgebenAn = false;
    boolean StatistikenAn = true;
    
    // Zufälliges Array erstellen
    int[] array = generateRandomArray(arraySize, numberRange);
    if (ArrayAusgebenAn){
      System.out.println("Unsortiertes Array:");
      System.out.println(Arrays.toString(array));
    }
    
    // Zeitmessung starten
    long startTime = System.currentTimeMillis();
    // MergeSort aufrufen
    int[] sortedArray = mergeSort(array);
    // Zeitmessung beenden
    long endTime = System.currentTimeMillis();
    // Sortiertes Array ausgeben
    if (ArrayAusgebenAn){
    System.out.println("Sortiertes Array:");
    System.out.println(Arrays.toString(sortedArray));
    }
    
    // Statistiken ausgeben
    if (StatistikenAn){
    System.out.println("Sortierschritte:");
    System.out.println("Vergleiche: " + comparisons);
    System.out.println("Zuweisungen: " + assignments);
    System.out.println("Zeitmessung: " + (endTime - startTime) + " ms");
    }
    
  }

  // Funktion, um ein zufälliges Array zu generieren
  public static int[] generateRandomArray(int size, int range) {
    Random random = new Random();
    int[] array = new int[size];
    for (int i = 0; i < size; i++) {
      array[i] = random.nextInt(range);
    }
    return array;
  }

  // MergeSort-Algorithmus
  public static int[] mergeSort(int[] array) {
    if (array.length <= 1) {
      return array;
    }

    // Array in zwei Hälften teilen
    int mid = array.length / 2;
    int[] left = Arrays.copyOfRange(array, 0, mid);
    int[] right = Arrays.copyOfRange(array, mid, array.length);

    // Rekursive Sortierung der Hälften
    left = mergeSort(left);
    right = mergeSort(right);
    // Zusammenfügen der sortierten Hälften
    return merge(left, right);
  }

  // Merge-Funktion: Zwei sortierte Arrays zusammenfügen
  public static int[] merge(int[] left, int[] right) {
    int[] merged = new int[left.length + right.length];
    int i = 0, j = 0, k = 0;

    // Elemente vergleichen und in das neue Array einfügen
    while (i < left.length && j < right.length) {
      comparisons++;
      if (left[i] <= right[j]) {
        merged[k++] = left[i++];
      } else {
        merged[k++] = right[j++];
      }
      assignments++;
    }

    // Restliche Elemente hinzufügen
    while (i < left.length) {
      merged[k++] = left[i++];
      assignments++;
    }
    while (j < right.length) {
      merged[k++] = right[j++];
      assignments++;
    }
    return merged;
  }
}

Bild zum Beitrag
Ask Me Anything: Blickwechsel

Wie kann ich in HTML Fefco 0201 berechnen?

<!DOCTYPE html>
<html lang="de">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Box Oberfläche</title>
  <style>
    body {
      font-family: Arial, sans-serif;
      display: flex;
      justify-content: center;
      align-items: center;
      height: 100vh;
      background-color: #f4f4f4;
    }
    .container {
      width: 600px;
      background: #666;
      padding: 15px;
      border-radius: 5px;
      box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.3);
      color: white;
    }
    .header {
      background: white;
      color: black;
      display: inline-block;
      padding: 5px;
      font-weight: bold;
    }
    .input-group {
      display: flex;
      align-items: center;
      margin: 10px 0;
    }
    .input-group label {
      background: white;
      color: black;
      padding: 5px;
      font-weight: bold;
      width: 80px;
      text-align: center;
    }
    .input-group input {
      width: 100px;
      padding: 5px;
      margin: 0 5px;
      text-align: center;
      border: 1px solid #ccc;
      background: white;
      color: black;
    }
    .unit-group {
      display: inline-flex;
      margin-right: 10px;
    }
    .unit-group input {
      margin-right: 0;
    }
    .unit-group input,
    .unit-group .unit {
      height: 35px;
    }
    .unit {
      display: inline-block;
      padding: 5px;
      background: white;
      color: black;
      font-weight: bold;
      border: 1px solid #ccc;
      text-align: center;
    }
    .result {
      margin-top: 20px;
    }
    .result label {
      background: white;
      color: black;
      padding: 5px;
      font-weight: bold;
      width: auto;
    }
    .result .input-group {
      white-space: nowrap;
    }
    .input-group label,
    .unit-group input,
    .unit-group .unit {
      height: 35px;
      line-height: 35px;
      padding: 0;
    }
  </style>
</head>
<body>
<div class="container">
  <div class="header">Box</div>
 
  <div class="input-group">
    <label>Länge</label>
    <div class="unit-group">
      <input type="number" id="length" min="0">
      <div class="unit">mm</div>
    </div>
    <label>Breite</label>
    <div class="unit-group">
      <input type="number" id="width" min="0">
      <div class="unit">mm</div>
    </div>
    <label>Höhe</label>
    <div class="unit-group">
      <input type="number" id="height" min="0">
      <div class="unit">mm</div>
    </div>
  </div>

  <!-- Neue Eingabefelder für "Sorte" und "Welle" -->
  <div class="input-group">
    <label>Sorte</label>
    <input type="text" id="sorte">
    <label>Welle</label>
    <input type="text" id="welle">
  </div>

  <div class="result">
    <div class="header">Ergebnis</div>

    <div class="input-group">
      <input type="text" id="result_m2" readonly>
      <label>Verbrauch in m²</label>
    </div>

    <div class="input-group">
      <input type="text" id="result_kg" readonly>
      <label>Verbrauch in KG</label>
    </div>
  </div>
</div>

<script>
function calculateArea() {
  const l = Math.max(0, parseFloat(document.getElementById('length').value) || 0);
  const w = Math.max(0, parseFloat(document.getElementById('width').value) || 0);
  const h = Math.max(0, parseFloat(document.getElementById('height').value) || 0);

  // Berechnung der Fläche in m²
  const area_mm2 = 7.5 * (l * w + l * h + w * h);
  const area_m2 = area_mm2 / 1000000;
  document.getElementById('result_m2').value = area_m2.toFixed(3);

  // Berechnung des Gewichts (hier als Platzhalter: 0.5 kg pro m²)
  const gewicht_pro_m2 = 0.5; // Diesen Wert ggf. anpassen
  const gewicht_kg = area_m2 * gewicht_pro_m2;
  document.getElementById('result_kg').value = gewicht_kg.toFixed(3);
}

// Event Listener für automatische Berechnung
document.getElementById('length').addEventListener('input', calculateArea);
document.getElementById('width').addEventListener('input', calculateArea);
document.getElementById('height').addEventListener('input', calculateArea);
</script>

</body>
</html>


<div class="result">

<button class="button" id="calculateBtn">Ergebnis</button><div class="input-group"><input type="text" id="result" readonly>

<label>Verbrauch in m²</label>

</div>




.button

 { background-color: white;

 color: #4CAF50; 

padding: 10px15px;

 border: 2px solid #4CAF50;

 border-radius: 5px; cursor: pointer; font-size: 16px; margin-bottom: 10px; 

} .button:hover { background-color: #4CAF50; color: white;
Ask Me Anything: Themenspecials