1 / 7
Feb 2023

Cześć,
mam zapytanie odnośnie zadania. Generalnie nie mogłem znaleźć odpowiedzi gdzie popełniam błąd. Program normalnie się uruchamia, wyświetla tak jak w przykładzie. Podczas podawania innych liczb również działa prawidłowo.
Jednak sędzia go nie przyjmuje.
Mój kod: https://ideone.com/zVTGCm4
Zadanie: https://pl.spoj.com/problems/PP0602A/6

Dziękuje za każdą pomoc.

  • created

    Feb '23
  • last reply

    Feb '23
  • 6

    replies

  • 276

    views

  • 3

    users

  • 2

    likes

  • 2

    links

Popraw wczytywanie danych:

#include <iostream>

using namespace std;

int main()
{
    int t;
    int tab[101];
    cin >> t;
    for (int i = 0; i < t; i++)
    {
        int n;
        cin >> n;
        for (int i = 0; i < n; ++i) 
        {
            cin >> tab[i];
        }

        for (int i = 1; i < n; i += 2)
    // ...

a uruchamiałeś na ideonie ? Bo nie działa jak trzeba… I w ogóle mam wrażenie że nie bardzo wiesz co robisz.

Hmm… możesz mieć rację z tym, że nie do końca wiem co robię :slight_smile:
Problem polega na tym, że u mnie wczytanie kończy się przekroczeniem wartości.
cosik
Sam program generalnie działa. Screen jest z codeblocks.
Myślisz, że powinienem najpierw pobrać wartości, a dopiero później utworzyć tablice dynamiczną ze wskaźnikiem?

"int x =0;
while(cin >> n && n <=100)
{
tab[x] = n;

        x++;
        k =x;
    }

"
chyba lepsza metoda jednak podana w poście przed moim, jeśli to ma wczytywać dane, bo mam wątpliwości
czemu to ma służyć i jaki ma mieć efekt? I powtarzam, uruchom na ideonie, nie codeblocks , bo spoj działa jak ideone, nie czeka na naciskanie klawiszy i przez to czasem są niespodzianki :slight_smile:

Ogólnie to trochę bezradność sprawiła :smiley: , że to tak wygląda.
while był po to, abym mógł bez podawania ilości danych opuścić pętle. W pętli for musiałbym zdefiniować przed rozpoczęciem. Moim założeniem było, że test będzie opierał się o różne ilości danych. Użytkownik może bez podania ilości elementów zacząć wprowadzać. Zmienna k otrzymuje ostatni numer tablicy i przenosi go, na kolejną pętle gdzie zostanie to wypisane.
W sposobie powyżej użytkownik z góry musi zdefiniować ile wprowadzi elementów.

Dobra jestem debilem… i w pierwszej kolejności powinienem zainwestować w kurs czytania.

cosik

Wejscia zaznaczone na niebiesko definiują ile ma być zmiennych.
Sam sobie zrobiłem pod górkę.
Dziękuje bardzo za pomoc!

Czytanie ze zrozumieniem zawsze sie przydaje :wink: A za przyznanie sie do błędu duży plus :smiley: