CodeGym
Promocja
CodeGym University
Nauka
Kurs
Zadania
Ankiety & Quizy
Gry
Pomoc
Harmonogram kopniaków w tyłek
Społeczność
Użytkownicy
Forum
Czat
Artykuły
Historie sukcesu
Aktywność
Opinie
Subskrypcje
Jasny motyw
Pytanie
  • Opinie
  • O nas
Rozpocznij
Rozpocznij naukę
Rozpocznij naukę teraz
  • Wszystkie pytania
Magda
Poziom 10
Poland
  • 14.02.2023
  • 53widoki
  • 1komentarz

Can't see what's wrong

Pytania dotyczące zadania Najdłuższa sekwencja
Składnia Java,  Poziom 8,  Lekcja 6
Dyskutowane

1. Utwórz listę liczb.
2. Za pomocą klawiatury dodaj do listy 10 liczb.
3. Wyświetl długość najdłuższej sekwencji powtarzających się w liście liczb.

Przykład dla listy: 2, 4, 4, 4, 8, 8, 4, 12, 12, 14:
3

Wartość to 3, ponieważ najdłuższa sekwencja powtarzających się liczb to trzy czwórki.

Wymagania:
  • Program musi wyświetlać liczbę na ekranie.
  • Program powinien czytać wartości z klawiatury.
  • W metodzie main zadeklaruj zmienną ArrayList z elementami Integer i natychmiast ją zainicjalizuj.
  • Program powinien dodawać do kolekcji 10 liczb zgodnie z warunkami.
  • Program powinien wyświetlać długość najdłuższej sekwencji powtarzających się w liście liczb.
package pl.codegym.task.task08.task0812; import java.io.*; import java.util.ArrayList; /* Najdłuższa sekwencja */ public class Solution { public static void main(String[] args) throws IOException { //tutaj wpisz swój kod int repeat=1; ArrayList<Integer> integers = new ArrayList<>(); ArrayList<Integer> times = new ArrayList<>(); BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); for(int i=0; i<5; i++) { integers.add(Integer.parseInt(reader.readLine())); } for(int i=1; i< integers.size(); i++) { if(integers.get(i)== integers.get(i-1)) { repeat++; } else if(!(integers.get(i)== integers.get(i-1))) { continue; } if(i==integers.size()) { times.add(repeat); } } int max = 1; for(int i=0; i< times.size(); i++) { if(times.get(i)>max) { max = times.get(i); } if(i==(times.size()-1)){ System.out.println(max); } } } }
0
Komentarze (1)
  • Popularne
  • Najnowsze
  • Najstarsze
Musisz się zalogować, aby dodać komentarz
Nicolas
Poziom 26 , France, France
14 lutego, 13:44
Hello there.
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
         for(int i=0; i<5; i++)
         {
             integers.add(Integer.parseInt(reader.readLine()));
         }
You need to add 10 integers from console in your ArrayList, not 5.
for(int i=1; i< integers.size(); i++)
        {
            if(integers.get(i)== integers.get(i-1))
            {
                repeat++;
            } else if(!(integers.get(i)== integers.get(i-1)))
            {
                continue;
            }

            if(i==integers.size())
            {
                times.add(repeat);

            }
        }
Your "else if" condition is already checked by your first "if", so it's not useful. Your last "if" is always false. "i" can not equals your array size because of "for(int i=1; i< integers.size(); i++)" which means that your "times" array size is always going to be 0 as nothing can be added inside and thus, the last part of your code will never be used :) !
0
Nauka
  • Rejestracja
  • Kurs Java
  • Pomoc w Zadaniach
  • Cennik
  • Projekty Gier
  • Składnia Java
Społeczność
  • Użytkownicy
  • Artykuły
  • Forum
  • Czat
  • Historie Sukcesu
  • Aktywność
  • Affiliate Program
Firma
  • O nas
  • Kontakt
  • Opinie
  • Pokój prasowy
  • CodeGym dla EDU
  • FAQ
  • Wsparcie
CodeGym CodeGym to internetowy kurs uczący od podstaw programowania w języku Java. Ten kurs to doskonały sposób na opanowanie języka Java dla początkujących. Zawiera pond 1200 zadań z możliwością natychmiastowej weryfikacji oraz niezbędny zakres teorii na temat podstaw języka Java. Aby pomóc Ci odnieść sukces w nauce, przygotowaliśmy również zestaw elementów motywacyjnych: quizy, projekty programistyczne, artykuły na temat efektywnego uczenia się i kariery programisty Java.
Obserwuj nas
Język interfejsu
Programistą Się Nie Rodzi, Programistą Się Zostaje © 2023 CodeGym
MastercardVisa
Programistą Się Nie Rodzi, Programistą Się Zostaje © 2023 CodeGym
This website uses cookies to provide you with personalized service. By using this website, you agree to our use of cookies. If you require more details, please read our Terms and Policy.