Java :: Aufgabe #95 :: Lösung #2

3 Lösungen Lösungen öffentlich
#95

Das Häufigste Element in einem Array

Anfänger - Java von klhlubek19 - 16.07.2015 um 13:46 Uhr
Schreiben Sie ein Programm, das aus einem Array das häufigste Element findet. Sollte es mehrere gleicher Anzahl finden, so darf irgend ein Element dieser Häufigsten ausgegeben werden.
#2
vote_ok
von Posic (130 Punkte) - 20.09.2015 um 18:03 Uhr

Zitat:

Newbie am Werk. Programmier noch nicht lange. Falls jemand Verbesserungen sieht würde ich mich freuen wenn man mir die mitteilt.
Kritik ist genauso gern gesehen(Solange es nicht persönlich wird) :).

Quellcode ausblenden Java-Code
/******************************************
*Das Häufigste Element  in einem Array!   *
*Schreibe Sie ein Programm, das aus einem *
*Array das häufigste Elemente findet.     *
*Sollte es mehrere gleicher Anzahl finden,*
*so darf irgendein Element dieser         *
*Häugigsten ausgegeben werden.            *
******************************************/
import javax.swing.*;
class ArrayVergleichUebung
{
	public static void main(String[] args)
	{
		JOptionPane.showMessageDialog(null, "Guten Tag, hier ermitteln wir die Häufigsten Zeichen in einem Element.");
		String eingabe = JOptionPane.showInputDialog("Bitte ein Element mit max. 15 zeichen!");
	
		//Int für die schleifen zählung
		int schleife;
		//Alle buchstaben die später identisch sind
		String dieBuchstaben   = "";
		//zählen wie viele buchstaben identisch sind	
		int wievieleBuchstaben = 0;
		//Schauen wann ein buchstabe gleich ist
		boolean vergleich;
		//index Anzahl ints
		int buchstabefuer2 = 1;
		int buchstabe1 = 0;
		int buchstabe2 = 0;
		//Länge des Strings ermitteln
		int stringLaenge0 = eingabe.length();
		int stringLaenge1 = (int)stringLaenge0;
		//Ermitteln der schleifen länge
		int schleifenLaenge =28;
		//rlyLaenge = Richtige Länge des Strings
		int rlyLaenge =	stringLaenge1-1;
		//Benutzer eingabe einfuegen in einem CharArray
		char[] chars = eingabe.toCharArray();
		
		if(stringLaenge1 == 2 || stringLaenge1 == 3)
		    {
			schleifenLaenge = (int)stringLaenge1*1;
		    }
		    else if(stringLaenge1 == 4)
			{
			    schleifenLaenge = (int)(stringLaenge1*1.5d);
			}
		        else if(stringLaenge1 == 5)
			    {
				schleifenLaenge = (int)stringLaenge1*2;
			    }
		            else if(stringLaenge1 == 6)
				{
				    schleifenLaenge = (int)(stringLaenge1*2.5d);
				}
				else if(stringLaenge1 == 7)
				    {
					schleifenLaenge = (int)stringLaenge1*3;
				    }
				    else if(stringLaenge1 == 8)
					{
					    schleifenLaenge = (int)(stringLaenge1*3.5d);	
					}
					else if(stringLaenge1 == 9)
					    {
						schleifenLaenge = (int)stringLaenge1*4;
					    }
					    else if(stringLaenge1 == 10)
						{
						    schleifenLaenge = (int)(stringLaenge1*4.5d);
						}
						else if(stringLaenge1 == 11)
						    {
							schleifenLaenge = (int)stringLaenge1*5;
						    }
						    else if(stringLaenge1 == 12)
							{
							    schleifenLaenge = (int)(stringLaenge1*5.5d);
							}
						    	else if(stringLaenge1 == 13)
							    {
							    	schleifenLaenge = (int)stringLaenge1*6;
							    }
							    else if(stringLaenge1 == 14)
							    	{
								    schleifenLaenge = (int)(stringLaenge1*6.5d);
							    	}
							    	else if(stringLaenge1 == 15)
								    {
								    	schleifenLaenge = (int)stringLaenge1*7;
								    }
								    else if(stringLaenge1>15)
									{
									    JOptionPane.showMessageDialog(null, "Bitte führen sie das programm nochmal aus, mit max. 15 Zeichen!");
									    System.exit(0);
								    	}
		
		
		for(schleife=0;schleife<=schleifenLaenge;)
		    {
			buchstabe2 = buchstabefuer2;

			    for(;buchstabe2<=rlyLaenge;)
				{
				    vergleich = (chars[buchstabe1] == chars[buchstabe2]);
					if(vergleich == true)
					    {
						wievieleBuchstaben++;
						dieBuchstaben += chars[buchstabe1];
						vergleich = false;
					    }
				    buchstabe2++;	
				 }
			buchstabefuer2++;
			buchstabe1++;
			schleife++;
		    }
			JOptionPane.showMessageDialog(null, "Es sind " + wievieleBuchstaben + " paar Zeichen gleich. Es sind die " + "|" + dieBuchstaben + "|" + "'s die geich sind.");
		 
	}
}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben