Zadanie z main - wyświetlanie w konsoli wczytanych znaków

Zadanie z main - wyświetlanie w konsoli wczytanych znaków
NA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 10
0

Witam, chcialbym jedynie, zeby na konsoli jedynie ponownie wyswietlaly sie wpisane wczesniej znaki. Pozniej juz sobie poradze. Jak zmienic zeby ilosc wczytywana sie zmieniala?

Kopiuj
#include <iostream>

using namespace std;

int main()
{
    int kartki, ilosc, a = 0;

    cout << "Podaj liczbe kartek: ";
    cin >> kartki;
    int tab [kartki][a];

    for ( int n = 0; n < kartki; n++)
        {
            cout << "Podaj ilosc liczb w rzedzie: ";
            cin >> ilosc;

        for (int i = 0; i < ilosc; i++)
           cin >> tab [n][i];
        }

        cout << endl;

    for ( int n = 0; n < kartki; n++)
        {
        for (int i = 0; i < ilosc; i++)
        {
            cout << i << "\t" << n << "\t";
            cout << tab [n][i] << endl;
        }
        }
    return 0;
}

Adres do zadania: http://main.edu.pl/pl/user.phtml?op=showtask&task=nap&con=PAS
Z gory dziekuje za pomoc

dodanie znacznika <code class="cpp"> - furious programming

MD
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 280
0

Nie rozumiem o co chodzi xd, żeby

Kopiuj
int tab [kartki][a]

podawać zmienną a podczas działania programu ?

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Tworzysz tablicę ZANIM wczytasz jej wymiary. W efekcie twoja tablica to tablica[N][0]

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
1

Potrzebujesz jedynie tyle:

Kopiuj
#include <iostream>
#include <vector>
using namespace std;
 
int main()
  {
   unsigned pagecount;
   for(cin>>pagecount;pagecount--;cout<<endl)
     {
      unsigned size;
      cin>>size;
      vector<int> tb(size); // można int tb[size]; ale nie każdy kompilator to pryjmie
      for(unsigned i=0;i<size;++i) cin>>tb[i];
      for(unsigned i=1;i<size;i+=2) cout<<tb[i]<<' ';
      for(unsigned i=0;i<size;i+=2) cout<<tb[i]<<' ';      
     }
   return 0;
  }

http://ideone.com/odYMN7

NA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 10
0

czyli stworzyc ja po pierwszej petli, czy gdzie? moglibyscie naprawic plik?

twonek
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2500
1
Kopiuj
int tab [kartki][a];

Tak jak ktoś wcześniej napisał, tutaj a ma wartość 0, raczej nie to czego chcesz.
Do zadań tego typu (na mainie czy gdziekolwiek, gdzie znana jest wielkość danych wejściowych) można stosować prostą rzecz:

Kopiuj
const int MAX_ZEST = 21;
const int MAX_RZAD = 1001;
int tab[MAX_ZEST][MAX_RZAD];

Tutaj nie musisz się martwić, że rezerwujesz więcej miejsca niż potrzebujesz.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.