can anyone please tell me what is wrong with my program?

        Random n=new Random();
       int card[][]=new int[5][5];
       int bola[]=new int[75];
       int sw=0,ctr,x=0,no,win=0,dr=0,dl=0,h1=0,h2=0,h3=0,h4=0,h5=0, m1=0,m2=0,m3=0,m4=0,m5=0;

       String diagonal, vertical, horizontal, fourCorners;


        //UNDER"B"
              ctr=0;
            while(ctr<5){
              sw=0;
              no=n.nextInt(15)+1;
          for(x=0;x<ctr;x++){
               if(card[x][0]==no)
                      sw=1;
                 }

                 if(sw==0) {
                 card [ctr] [0]=no;
                 ++ctr;
                 }
        }
               //UNDER"I"
          ctr=0;
        while(ctr<5){
          sw=0;
              no=n.nextInt(15)+16;
              for(x=0;x<ctr;x++){
                 if(card[x][1]==no)
                     sw=1;
            }
        if(sw==0){
               card[ctr][1]=no;
            ++ctr;          
                 }
           }
          //UNDER"N"
          ctr=0;
          while(ctr<5){
            sw=0;
            no=n.nextInt(15)+31;
            for(x=0;x<ctr;x++){
              if(card[x][2]==no)
                   sw=1;
             }
             if(sw==0){
               card[ctr][2]=no;
               ++ctr;
          }
        }
        //UNDER"G"
            ctr=0;
        while(ctr<5){
              sw=0;
          no=n.nextInt(15)+46;
          for(x=0;x<ctr;x++){
            if(card[x][3]==no)
                  sw=1;
          }
          if(sw==0){
        card[ctr][3]=no;
        ++ctr;
         }
        }
        //UNDER"O"
        ctr=0;
            while(ctr<5){
              sw=0;
              no=n.nextInt(15)+61;
              for (x=0; x<ctr; x++){
              if(card[x][4]==no)
            sw=1;
           }
           if(sw==0){
             card[ctr][4]=no;
            ++ctr;
            }
                  }
                 card[2][2]=0;
             System.out.println("\nB\tI\tN\tG\tO\n");
         for(int a=0;a<5;a++){
             for(int b=0;b<5;b++){
            System.out.print(card[a][b]+"\t");
               /*try{
            Thread.sleep(500);
            }catch(InterruptedException ex){
                      Thread.currentThread().interrupt();
            }*/
         }
         System.out.println("\n");
             }

        ctr=0;
        System.out.println("\n[Winning Numbers]");
        LOOP:
        while(ctr<75){
        sw=0;
        no=n.nextInt(75) + 1;
        for(x=0;x<ctr;x++){
            if(bola[x]==no)
            sw=1;
        }
        if(sw==0){
           bola[ctr]=no;
           ++ctr;
            /*try{
            Thread.sleep(500);
            }catch(InterruptedException ex){
                      Thread.currentThread().interrupt();
            }*/
           System.out.print(no+"\t");



for(int aa=0;aa<5;aa++){
    for(int aaa=0;aaa<5;aaa++)
    if(no==card[aa][aaa])



    if((no==card[0][0])||(no==card[1][1])||(no==card[3][3])||(no==card[4][4]))
    dr++;

    if((no==card[0][4])||(no==card[1][3])||(no==card[3][1])||(no==card[4][0]))
    dl++;

    if((dl==4)||(dr==4)){
        System.out.println("\nBINGO diagonal!\n");
        System.out.print("Numbers Drawn:"+ctr);

        break LOOP;


    }






    if((no==card[0][0])||(no==card[0][1])||(no==card[0][2])||(no==card[0][3])||(no==card[0][4]))
    h1++;

    if((no==card[1][0])||(no==card[1][1])||(no==card[1][2])||(no==card[1][3])||(no==card[1][4]))
    h2++;

    if((no==card[2][0])||(no==card[2][1])||(no==card[2][2])||(no==card[2][3])||(no==card[2][4]))
    h3++;

    if((no==card[3][0])||(no==card[3][1])||(no==card[3][2])||(no==card[3][3])||(no==card[3][4]))
    h4++;

    if((no==card[4][0])||(no==card[4][1])||(no==card[4][2])||(no==card[4][3])||(no==card[4][4]))
    h5++;

    if((h1==5)||(h2==5)||(h3==4)||(h4==5)||(h5==5)){
        System.out.println("\nBINGO horizontal!\n");
        System.out.print("Numbers Drawn:"+ctr);
    break LOOP;


                    }





    if((no==card[0][0])||(no==card[1][0])||(no==card[2][0])||(no==card[3][0])||(no==card[4][0]))
    m1++;

    if((no==card[0][1])||(no==card[1][1])||(no==card[2][1])||(no==card[3][1])||(no==card[4][1]))
    m2++;

    if((no==card[0][2])||(no==card[1][2])||(no==card[2][2])||(no==card[3][2])||(no==card[4][2]))
    m3++;

    if((no==card[0][3])||(no==card[1][3])||(no==card[2][3])||(no==card[3][3])||(no==card[4][3]))
    m4++;

    if((no==card[0][4])||(no==card[1][4])||(no==card[2][4])||(no==card[3][4])||(no==card[4][4]))
    m5++;

    if((m1==5)||(m2==5)||(m3==4)||(m4==5)||(m5==5)){
        System.out.println("\nBINGO vertical!\n");
        System.out.print("Numbers Drawn:"+ctr);

            break LOOP; 

                    }




    if((no==card[0][0])||(no==card[0][4])||(no==card[4][0])||(no==card[4][4]))
    win++;

                    if(win==4){
        System.out.println("\nBINGO 4 Corners!\n");
        System.out.print("Numbers Drawn:"+ctr);
        break LOOP;
                        }

OK, I'm not going to do you homework for you. However, you should seriously consider running this program through a pretty printer. The formatting is so bad that it's a wonder you can read it yourself. And, so many variables names starting with "m" and "h"? Try giving the variables meaningful names so you can follow the logic better.

Once that's aLL taken care of, you can actually describe what's not working. You didn't tell us anything about the failure mode you're seeing.

Good luck...

This article has been dead for over six months. Start a new discussion instead.