1 | djbrain | 44355 |
2 | subofferul | 5220 |
3 | robica | 4610 |
4 | krystyana84 | 3980 |
5 | elena2008 | 2690 |
Membri inscrisi | 96841 |
Intrebari | 35994 |
Raspunsuri | 164913 |
Arrays de
andreipop84596
|
|||||||||
Avem de exemplu următorul şir: int[] array = {12, 0, -22, 0, 43, 545, -4, -55, 12, 43, 0, -999, -87} Trebuie să se facă două şiruri, unul pentru stocarea elementelor pozitive și celălalt pentru elementele negative ale şirului array, și logica necesară care va efectua extragerea elementelor corespunzătoare şi plasarea lor în şirul adecvat. Elementele egale cu zero nu trebuie introduse în şirurile rezultate. Cu alte cuvinte, din şirul array care este dat trebuie să se extragă toate elementele pozitive și să fie puse într-un şir separat. De asemenea, trebuie să se extragă toate elementele negative și să fie puse într-un şir separat. De asemenea, trebuie să se determine numărul de repetiţii pentru fiecare număr din şirul iniţial care se repetă de două sau de mai multe ori. În acest caz, trebuie numărate şi elementele egale cu zero. Astfel, pentru fiecare valoare a unui element care se repetă trebuie afişată valoarea respectivă, împreună cu numărul de repetiţii. Desigur, este necesar ca funcționalitatea scrisă să fie aplicabilă pe orice şir cu valori întregi, nu doar în acest exemplu concret. Ce am facut pana acum este: package assigment01; import java.util.Arrays; class Assigment01 { public static void main(String[] args) { int[] array = {12, 0, -22, 0, 43, 545, -4, -55, 12, 43, 0, -999, -87}; Arrays.sort(array); // Sortarea sirului System.out.println("Rezultatul sortarii sirului este:: "); System.out.println(java.util.Arrays.toString(array)); int nrDouble = 0; if (array.length > 1) { for (int i = 0; i < array.length - 1; i++) { if (array[i] == array[i + 1]) { nrDouble++; } } } int i = 0; // Numararea elementelor negative while (i < array.length && array[i] < 0) { i++; } int[] negative = new int[i]; int[] positive = new int[array.length - i]; System.arraycopy(array, 0, negative, 0, negative.length); for (int a = 0; a < positive.length; a++) { positive[a] = array[a + i]; if (array[a + i] != 0) { System.out.println("Numere pozitive: " + array[a + i]); } } System.out.println("Numere negative: " + Arrays.toString(negative)); System.out.println("Numere Pozitive" + Arrays.toString(positive)); System.out.printf("Numere duble: %d", nrDouble); System.out.println(""); } } La partea cu if (array[a + i] != 0) acolo normal trebuie sa pun numerele pozitive intr-un array nu sa mi le printeze una sub alta si nam idee cum sa mai fac, pe langa asta mai trebuie sa ultima parte din exercitiu cu numere duble... mor incet :))) |
Tags:
|
||||||||
|
Comentariul lui:
19-03-2020 18:03:54
Data:
|
||||||
|
||||||
* | Raspuns acceptat | Voturi: | 18 Voteaza |