Lottozahlenapp mit sortierter und eindeutiger Ausgabe mithilfe eines Arrays und darauf angewandten Sortieralgorithmuses

 

diese Datei ist als activity_main.xml nach Anlegen der App z.B. unter Eclipse in den  Ordner res mit Unterordner layout zu kopieren

<LinearLayout
     android:orientation="vertical"
     android:layout_height="fill_parent"
      android:layout_width="fill_parent"
     xmlns:android="http://schemas.android.com/apk/res/android">
  <ImageView
      android:layout_height="wrap_content"
      android:layout_width="match_parent"
      android:src="@drawable/lot1"
      android:id="@+id/lotto2"/>
     
 
   <Button
          android:layout_height="wrap_content"
           android:layout_width="fill_parent"
           android:id="@+id/Buttonlotto"
           android:text="Lottozahlen hier drücken">
            </Button>
    
            <TextView
                 android:layout_height="wrap_content"
                  android:layout_width="fill_parent"
                  android:id="@+id/TextViewERGEBNIS"
                  android:text="Lottozahlen">
                   </TextView>
              <TextView
                       android:layout_height="wrap_content"
                      
                          android:layout_width="fill_parent"
                      android:id="@+id/TextViewERGEBNIS2"
                       android:text="Zusatzzahl">
                 </TextView>
 
   
    </LinearLayout>
   

das dazu benötigte Java-Programm ist in den Unterordner der Quelle src in der Main.Activity.Java zu kopieren,

Achtung: Sie müssen den Dateinamen ihrer App einbinden, also wo unten com.example.lotfeld1 steht , ist ihr Appname einzusetzen

 package com.example.lotfeld1;

import android.app.Activity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.os.Bundle;


public class MainActivity extends Activity implements OnClickListener{
/** Called when the activity is first created. */

    public Button Buttonlotto;
    
    public TextView TextViewERGEBNIS,TextViewERGEBNIS2;
    private int zufall1,zufall2,zufall3,zufall4,zufall5,zufall6,zufallzu;

    
    @Override
 public void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);


 setContentView(R.layout.activity_main);
 
 
 //jetzt muss die App wissen, wer was ist

 Buttonlotto = (Button) findViewById(R.id.Buttonlotto);
 
 TextViewERGEBNIS = (TextView) findViewById(R.id.TextViewERGEBNIS);
 TextViewERGEBNIS2 = (TextView) findViewById(R.id.TextViewERGEBNIS2);
 //Dem OnClickListener muss gesagt werden, dass er auf den Button achten soll
 Buttonlotto.setOnClickListener(this);

}

//OnClick: Wird aufgerufen, wenn geklickt wird..
    @Override
    public void onClick(View v) {
    //(braucht man eigentlich nur bei mehreren Buttons)
    //Zwischen den Buttons unterscheiden:
    //v = View, auf die geklickt wurde, wird uns mitgegeben..
          int[]a;
          a=new int[51];
          int hilf;
                
          
    if(v == Buttonlotto){
    
        
        for (int i=1;i<=49;i++)
        {
            a[i]=i;
        }
      
        
        for (int i=1;i<=7;i++)
        {
            
            zufall1=(int) (Math.random() * (50-i)) + 1;
            hilf=a[50-i];
            a[50-i]=a[zufall1];
            a[zufall1]=hilf;
            
        }
        
    for (int i=44;i<=49;i++)
    {
          for(int s=44;s<=49;s++)
               {
                 if(a[s]<a[s+1])
                  {
                     int hilfneu=a[s];
                     a[s]=a[s+1];
                     a[s+1]=hilfneu;
                  }
               }
        
     }
   

//Jetzt muss die Zahl nur noch ausgegeben werden..
    TextViewERGEBNIS.setText("Lottozahlen:     " + a[49]+"  /  "+a[48]+"  /  "+a[47]+"  /  "+a[46]+"  /  "+a[45]+"  /  "+a[44]);
    TextViewERGEBNIS2.setText("Zusatzzahl:     " + a[43]);
    }
    }
}

 

Ein gutes Icon zum Appaufruf  sollte als ic_launcher.png in den verschiedenen Ordnern abgelegt werden, statt eines Button könnte man leicht den Schüttelsensor einprogrammieren mit ensprechendem Sound.