Java- wypisanie liczb, które nie są podane w tablicy , wypisanie liczb z tablicy oraz które nie są w tablicy?

0

Dzień dobry
Może się powtarzam w temacie, ale napiszę o co mi chodzi.
Mam tablicę

{ 1,4,6,8,10}

Chce, żeby program w Java napisał mi liczby, które nie zostały podane w tablicy, jak i liczby, które zostały podane w tablicy

czyli
wynik jaki chce osiągnąć to :

dane z tablicy : 1 4 6 8 10
dane, które nie są w tablicy 2 3 5 7 9
wszystkie dane z tablicy oraz które nie są w tablicy :  1 2 3 4 5 6 7 8 9 10
Koniec zadania

Program napisany w Java
Proszę o pomoc
Dziękuje za pomoc

0

Nie określiłeś precyzyjnie, które liczby są niepodane - w tej tablicy również nie znajduje się na przykład 4.5, pi czy 15.

0

Dzień dobry
Dziękuje za odpowiedź
Podane prze zemnie liczby są przykładowe.

Po odnalezieniu odpowiedniego kodu, z którego jestem zielony, ale wiem, że to będzie łatwe. sam sobie przerobie ten kod na swój sposób, tylko potrzebuję przykładu.

Chce osiągnąć tablicę z przedziału od 0-23
Część liczb od 0-23 będzie w tablicy
na przykład nowy przykład tablicy

int[] tablica = { 4,8,10,14,22 };

wyświetlenie liczb z tablicy to :

int[] tablica = { 4,8,10,14,22 };

for (int3 = 0; int3 < tablica.length; int3++)
{
System.out.println ( tablica + " ");
}

Punkt 2.
Wyświetlenie liczb, które nie zostały podane w tablicy "tablica, czyli w tablicy mamy

int[] tablica = { 4,8,10,14,22 };

A ja chce wyświetlić liczby, które nie zostały podane w tablicy od pierwszej liczby w tablicy "tablica", czyli

5,6,7,9,11,12,13,15,16,17,18,19,20,21

Punkt 3.
Wyświetlenie całej tablicy od pierwszej liczby tablicy "tablica", czyli 4 do ostatniej liczby tablicy "tablica", czyli 22.
Z zaznaczeniem, które liczby były w tablicy, a które nie.
na przykład mam tablicę "tablica"

int[] tablica = { 4,8,10,14,22 };

w tablicy "tablica" nie ma liczb

5,6,7,9,11,12,13,15,16,17,18,19,20,21

Program ma wyświetlić wszystkie liczby w zakresie od 4 (z tablica[0]) do 22 (tablica[4])
na przykład

4 jest
5 pusta tablica
6 pusta tablica
7 pusta tablica
8 jest
9 pusta tablica
10 jest
11 pusta tablica
12 pusta tablica
13 pusta tablica
14 jest
15 pusta tablica
16 pusta tablica
17 pusta tablica
18 pusta tablica
19 pusta tablica
20 pusta tablica
21 pusta tablica
22 jest
koniec programu

Może trochę zamotałem, ale tak chce osiągnąć swój program

Dziękuje za odpowiedz

0

Jak masz już wyświetlanie liczb z tablicy to wystarczy to trochę zmodyfikować, dodając ifa:

for (int i=tablica[0]; i<tablica[tablica.length-1]; i++{
    if (i == tablica[i]) System.out.println("jest w tablicy");
    else System.out.println("nie ma w tablicy);
}

To zadziała jeśli tablica jest posortowana

0

Dziękuje za odpowiedz
Przy pomocy innych użytkowników za co bardzo, ale to bardzo dziękuję, rozwiązałem problem


public class test_przyklad_ok_2017_1 
{

public static String ZamianaNaGodzine(int int14)
  {
    int int10;
    int int11; 
    int int12;
    int int13;

    String string10 = "";
    String string11;    

    int11 = int14 / 60;
    int13= int11 * 60;
    int14 = int14 - int13;

    if (int14 < 10) 
    {
      string10 = "0" + int14;
    }
    else
    {
      string10 = int14 + "";        
    }

    string11 = string10 + "";

    return string11;
  }

public static int Godzina(int int22)
  {
    int int20;
    int int21;
    String string20;    

    int21 = int22 / 60;
    string20 = Integer.toString(int21);
    return Integer.parseInt(string20);
  } 

    public static void main(String[] args) 
    {
    int[] intAll1 = { 185,215,225,245,365,375,485,495,585,595,600,775,795,800,1330,1331,1332 };        
    int[] intAll2 = { 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23 };
    int[] intAll3 = { 2,5,7,9,14,17,19,22,23 };

    int int1 = 1;
    int int2 = 0;
    int int3;
    int int4;    
    int int5; 
    boolean boolean1;  
    int int21 = 3;

    String string1 = "";
    String string2 = "";
    String string3; 
    String string4;     

for (int int55 = 0 ; int55 <= 23; int55++) 
{
    boolean1 = false;

    for (int3 = 0; int3 < intAll1.length; int3++)
    {

  if (intAll1[int3] != -1)
        {
        int4 = intAll1[int3];
        int5 = Godzina(int4);
        string4 = ZamianaNaGodzine(int4) + "";

          // int int1 = 1;
          if (int1 == 1)
          {  
            // int int2 = 0;
            int2 = int5;
            string1 = int5 + "||A ";
            int1 = 0;
          }
          // int int2 = 0; 
          // int5 = Godzina(int4);
          if (int2 == int5)
          {
            string1 = string1 + string4 + "B ";

          }
          else
          {

          // System.out.println ( string1 + "C ");

            string1 = int5 + "||C " +  string4 + "D ";
            int2 = int5; 

         }

       // int int66 = int4;
        if (int55 == int5) 
            {
            boolean1 = true;
            break;
             } } }
                if (!boolean1) 
                {
       System.out.println(int55 +  " ||E --");                   
                }
                else
                {
        System.out.println(string1 + "F "); 
                }
}
    }
}

wynik :

run:
0 ||E --
1 ||E --
2 ||E --
3||C 05D F 
4||C 05D F 
5 ||E --
6||C 05D F 
7 ||E --
8||C 05D F 
9||C 45D F 
10||C 00D F 
11 ||E --
12||C 55D F 
13||C 15D F 
14 ||E --
15 ||E --
16 ||E --
17 ||E --
18 ||E --
19 ||E --
20 ||E --
21 ||E --
22||C 10D F 
23 ||E --
BUILD SUCCESSFUL (total time: 0 seconds)

W tablicy nie które liczby mieszczą się w granicach 60, które powinny być wyświetlone koło siebie oddzielone spacją.
Jak zrobić, a żeby program odczytał mi w takiej pozycji jak podałem poniżej
na przykład :

22 ||C 10D 11B 12B F

Dziękuje za odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0