Java – die neusten Beiträge

CSV Datei in Php als Tabelle ausgeben?

Hallo, bin ziemlich neu in Php und will ein Programm erstellen, wo man eine Tablle mit Produktgruppe, Datum und Umsatz einliest und das Programm das automatisch als Graphische Tabelle ausgibt, zudem soll das Datum in 4 Quartale sortiert werden.

Ist keine Hausaufgabe!!

Bin noch nicht so weit gekommen:

CSV-Datei:

produktgruppe,datum,umsatz
Tee,01.01.2020,0.76
Kosmetik,01.01.2020,21.65
Tee,02.01.2020,10.10
Gewürze,02.01.2020,18.53
Gewürze,02.01.2020,40.71
Gewürze,02.01.2020,39.06
Kosmetik,02.01.2020,1.65
Tee,03.01.2020,38.03
Kerzen,03.01.2020,41.99
Geschenkkörbe,04.01.2020,13.92
Gewürze,05.01.2020,28.27
Gewürze,05.01.2020,19.84
Kerzen,05.01.2020,19.81
Kerzen,05.01.2020,19.57
Kerzen,05.01.2020,49.97
Kerzen,05.01.2020,14.06
Tee,06.01.2020,42.28
Gewürze,06.01.2020,20.44
Kosmetik,06.01.2020,4.62
Gewürze,07.01.2020,1.28
Kosmetik,07.01.2020,12.46
Gewürze,08.01.2020,9.20
Tee,09.01.2020,32.47
Tee,09.01.2020,4.23
Gewürze,09.01.2020,0.79
Kerzen,09.01.2020,2.97
Kosmetik,09.01.2020,43.68
Kosmetik,10.01.2020,21.67
Kosmetik,10.01.2020,6.44
Tee,12.01.2020,15.09

Vorhandener Programmcode:

print "<table border = 3 cellpadding = 5>";


        foreach($rows as $artikel){
            foreach($artikel as $index=>$wert){
                /* if($zahl % 3){ */
                    /* print "<tr>"; */
                    /* print "$wert<br>"; */
                    print "<th width = 100 align = right bgcolor = green>$wert</th>";
                    /* print "</tr>"; */
                /* }else{
                    print "<br>";
                } */
            }        
        }


    print "</table>";   

Wie es in ca. ausschauen soll:

Da bei mir das ganze leider nicht wie geplant funkt, bin ich nun auf eure Hilfe angewiesen, vielleicht, hat jemand eine Idee?

Lg

Bild zum Beitrag
Computer, Microsoft Excel, programmieren, Java, Datenbank, Informatik, PHP, Tabelle, CSV-Datei

Array Werte einfügen/löschen/ändern?

Hallo ich bin gerade am Java lernen und habe folgendes Problem:

Ich habe ein Array erstellt in dem ich angebe wie viele Zahlen ich eingeben will und diese dann eingeben kann. Nun möchte ich über Switch-Case dem Benutzer die Möglichkeit geben Werte neu an eine beliebige Stelle einzufügen / einen Wert zu löschen / oder einen Wert abzuändern.

import java.util.Scanner;


public class Hausaufgabe71 {


    public static void main(String[] args) {
        Scanner eingabe = new Scanner(System.in);
        
        System.out.println("Wie viele Zahlen sollen eingegeben werden?");
        int anzahlZahlen = eingabe.nextInt();
        double[] zahlen = new double[anzahlZahlen];
        for (int i = 0; i < zahlen.length; i++) {
            System.out.print("Zahl " + (i + 1) + ": ");
            zahlen[i] = eingabe.nextDouble();
        }
        System.out.print("\nAktuelle Zahlen: ");
        for (double element : zahlen) {
            System.out.print(element + " ");
        }
        
        System.out.println("\nSumme: " + summe(zahlen) + " " + "Durchschnitt: " 
                + durchschnitt(zahlen));
        
        System.out.println("Was möchten Sie tun?\n1) Zahl einfügen\n2) Zahl"
                + " löschen \n3) Zahl ändern \n4) Beenden");
        
        int menue = eingabe.nextInt();
    
        switch (menue) {
        case 1:
            System.out.println("\nAn welcher Position möchten Sie die Zahl "
                    + "ändern?\n(1 = erste Zahl; " + (zahlen.length + 1) 
                    + " = hinten anfügen)");
            int pos = eingabe.nextInt();
            
            break;
            


        }
        
    }
    public static double summe(double[] zahlen) {
        double sum = 0;
        for (double value : zahlen) {
            sum += value;
        }
        return sum;
    }
    public static double durchschnitt(double[] zahlen) {
        double dur = 0;
        for (int i = 0; i < zahlen.length; i++) {
            dur += zahlen[i];
        }
        return dur / zahlen.length;
    }
}

Das ist mein bisheriger Quelltext.

Hat jemand einen Ansatz für mich wie ich diese Punkte realisiere?

MfG

Computer, programmieren, Java

Java: Wie kann ich die Werte für die Matrix einlesen, nachdem ich die Spalte und Zeile eingelesen habe?

Ich stecke bei einer Aufgabe leider etwas fest.

Schreiben Sie ein Programm  Matrix, welches ein zweidimensionales Array übergeben bekommt und die Summe aller Werte in diesem Array berechnet.
Das erste, von der Konsole übergebene Argument, ist die Anzahl der Zeilen. Das zweite die Anzahl der Spalten des Arrays. Die restlichen Argumente sind Werte, mit denen das Array gefüllt werden soll. Gehen Sie davon aus, dass nur ganze Zahlen (positiv und negativ) übergeben werden.
Ihr Programm soll erst die Summe und anschließend die gesamte Matrix zeilenweise ausgeben. Falls zu wenige, oder zu viele Argumente von der Konsole übergeben werden oder die übergebenen Größenwerte negativ sind, soll Ihr Programm eine Fehlermeldung ausgeben, welche das Wort  ERROR enthält.
Eine Matrix der Größe 0 x 0
0×0 zählt als valide Matrix und hat die Summe $0$.

Ich habe bereits einen Ansatz zum Einlesen der Matrix. Dieser funktioniert aber nicht so ganz und ist noch unvollständig, da ich bei einigen Sachen nicht weiter komme.

Zum Beispiel, wie ich die Werte einlesen soll, nachdem ich die Spalte und Zeile eingelesen habe.

public class Matrix {
  public static void main(String[] args) {
    int zeile = Integer.parseInt(args[0]);
    int spalte = Integer.parseInt(args[1]);
    int Werte = Integer.parseInt(args[2]);
    int sum = 0;

    int[][] matrix = new int[zeile][spalte];

    for (int i = 0; i < zeile; i++) {
      for (int j = 0; j < spalte; j++) {
        matrix[i][j] = ???
        sum = matrix[i][j] + matrix[i][j];
      }

      System.out.println(sum);
      System.out.println(matrix[i][j]);
    }            
Schule, programmieren, Java, Array, Matrix

Bubblesort mehrdimensionales Double Array?

Hallo alle zusammen :) Ich bin gerade ein bisschen am rumprobieren. Meine Aufgabe ist es ein mehrdimensionales Double Array zu implementieren welches mit Bubblesort /Insertionsort oder Selectionsort sortiert wird, sodass ich danach noch eine doppelte Median-Berechnung implementieren kann. Ich weiß wie Bubblesort bei Integern funktioniert, nur mir werden Compilerfehler angezeigt, weil ein Double nicht zum Int gecastet werden kann. Nur ich arbeite doch schon von Anfang an mit Double-Werten. Muss ich die Double Werte erst zu Integern casten um Bubblesort anzuwenden? Ich stehe vollkommen auf dem Schlauch und weiß nicht weiter. Ich habe mir so viele Java-Videos angeguckt und kenne die Theorie, nur das anwenden im Programmcode fällt mir sehr schwer. Ich studiere Informatik und muss jede Woche Hausaufgaben lösen. Nur die Hausaufgaben entsprechen nicht den Vorlesungsinhalten und wir sollen uns das Programmieren komplett selbst aneignen. Wir haben bis jetzt nie gesehen wie ein Programm implementiert wird, nur die Theorie dahinter gelernt.

Ich hoffe mir kann jemand helfen. Ich möchte es auch alleine schaffen, schließlich hilft mir in der Klausur auch keiner, aber ich weiß nicht was ich noch machen soll. Ohne Vorwissen ist es wirklich schwer ein Programm zu implementieren, auch wenn man die Theorie dahinter kennt. Ich bin auch erst seit 3 Wochen am studieren und ich weiß, dass das eigentlich zu den Basics gehört :(

Bis jetzt habe ich lediglich das. (Klammern habe ich nicht alle mit eingefügt, aber an fehlenden Klammern liegt es auch nicht)

public static void main(String[] args) {
		double[][] array = { { 1.0, 2.1, 3.0 }, { 2.0, 3.1, 1.0 } };

public static double medianInception(double[][] a) {
		boolean swapped;
		do {
			swapped = false;
			for (double i = 1; i < a.length; i++)
				if (i[c - 1] > i[c]) {
					double swap = i[c];
					i[c] = i[c - 1];
					i[c - 1] = swap;
					swapped = true;
				}
		} while (swapped);
Studium, programmieren, Java, Informatik, Median, Bubblesort

Frage zu CSV-Datei und Java?

Hallo zusammen,

kann mir jemand bei diesen Probleme helfen? Ich weiß wirklich nicht, wie ich da rangehen muss.

  1. Aufgabe ist, dass ich Anzahl der in der eingegeben CSV-Datei gespeicherten Personen bzw. Eintrage zurückgeben soll und zwar mit der Funktion public static int countCsvData_CSV_NUM (List csvData)
  2. public static List selectCsvDataByYear_CSV_NUM (List csvData, int selectedYear): diese Funktion (im Datenbankenkontext bekannt als Selektion) soll als Eingabe die Daten aus der CSV-Datei als Arrayliste bekommen (siehe ESL-0-Zettelserie Aufgabe 2.1) und ein konkretes Geburtsjahr. Setzen Sie voraus, dass das Geburtsjahr an dritter Stelle im Array steht. Die zurückgegebene Liste soll nur solche Arrays enthalten, deren Geburtsjahr-Attribut selectedYear entspricht.
  3. public static List> selectCsvDataByValue_CSV_ASSOC (List> csvData, String selectedKey, String selectedValue): Diese Selektions-Funktion soll nun flexibler sein. Diese Funktion arbeitet man hier mit den gemappten CSV-Daten. Dieses mal ist das Attribut nicht auf Geburtsjahr festgelegt, sondern kann durch den Funktionsbenutzer mit selectedKey bestimmt werden, der zu selektierende Wert mit selectedValue. In der zurückzugebenden Liste von Maps dürfen nur solche Maps enthalten sein, die das entsprechende Attribut besitzen und dessen Wert mit dem gewünschten Wert übereinstimmt. Natürlich sollte Ihre Funktion auch für jede andere CSV-Datei korrekt funktionieren und nicht unerwartet ohne Fehlermeldung abstürzen. 
  4. public static double avgCsvDataByTown_CSV_ASSOC (List> csvData, String selectedTown): Diese Funktion soll den Durchschnitt der Geburtsjahre aller Einwohner einer bestimmten Stadt zurückgeben. Die Stadt wird im Parameter selectedTown spezifiziert. Hat die gewählt Stadt keine Einwohner bzw. existiert diese nicht, soll 0 zurückgegeben werden. Wenn Geburtsjahre existieren, die nicht in einen gültigen Zahlenformat abgespeichert sind, soll -1 zurückgegeben werden.

Bild zum Beitrag
programmieren, Java, Informatik, CSV-Datei

Meistgelesene Beiträge zum Thema Java