• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Program do wypisywania liczb bez powtórzeń w kolejności w jakiej się pojawiły ( musi być z użyciem tablic)

Object Storage Arubacloud
0 głosów
608 wizyt
pytanie zadane 2 listopada 2019 w C i C++ przez adeptc Nowicjusz (160 p.)
Witam!

3 tygodnie temu rozpocząłem swoją przygodę z programowaniem i sporo kwestii wciąż nie jest dla mnie jasnych, więc postanowiłem poszukać pomocy tutaj. Mam do napisania prosty program, który wczyta zestaw liczb, po czym wypisze te liczby bez powtórzeń w kolejności pierwszego pojawienia się i nie mam pomysłu na ten program( w tym programie powinny być użyte tablice) . Będę wdzięczny za każdą pomoc!
komentarz 2 listopada 2019 przez DragonCoder Nałogowiec (36,500 p.)
Vectoe, petla, usuwanie elementów z vectoe. Wiecej chyba nie potrzebujesz, chyba ze uzyjesz wyszukiwarki, bo bylo juz takie zadanie i rozwiazania byly napisane zarowno przy użyciu tablic, jak i vector
komentarz 2 listopada 2019 przez tkz Nałogowiec (42,000 p.)
unordered_set będzie wygodniejsze.
komentarz 3 listopada 2019 przez Inn Gaduła (4,300 p.)

@adeptc, Na starcie z programowaniem radziłbym napisać własną funkcję która sprawdzi czy nastąpiło powtórzenie w tablicy i nie zapisze nowej wartości, w razie pytań pisz :)

komentarz 11 listopada 2019 przez adeptc Nowicjusz (160 p.)
Witam, porzuciłem ten program i poleciałem dalej z materiałem, ale teraz postanowiłem do niego wrócić.

oto mój kod na chwilę obecną:

#include <iostream>
using namespace std;
#define SIZE 100
int main() {
    int tab[SIZE] = { 0 }, nowa[SIZE];
    int liczba,x;
    /*podawanie ilosci podawanych wartosci*/
    cout << "podaj liczbe podawanych cyfr: ";
    cin >> liczba;
    /*przypiswanie elementów do tablicy*/
    for (int i = 0; i < liczba; i++) {
        cin >> x;
        tab[i] = x;
    }
    /*wybieranie niepowtarzajacyh sie elementów i dodawanie ich do tablicy*/
    for (int i = 0, j=0; i < liczba; i++) {
        if (tab[0] == tab[i]) {
            nowa[j] = tab[i];
            j++;
        }
    }

    cout << "element nowej tablicy";
    return 0;
}

 

Miałem w planie teraz spróbować wymyślić coś z użyciem pętli, aby na nowo powstałej drugiej tablicy wyeliminowac pozostałe powtórzenia. Trochę nie mam pomysłu jak to teraz, dokończyć. Czy mój tok rozumowania jest w miarę dobry, czy może ten pomysł jest zły ?Jakieś porady ?

1 odpowiedź

0 głosów
odpowiedź 3 listopada 2019 przez j23 Mędrzec (194,920 p.)
  1. czytasz liczbę.
  2. sprawdzasz, czy jest w tablicy.
  3. jeśli nie ma, dodajesz ją do tablicy i wypisujesz, a jeśli jest, nic nie robisz.
  4. wracasz do punktu 1.
komentarz 11 listopada 2019 przez adeptc Nowicjusz (160 p.)
Problem polega na tym, że nie umiem sprawdzić czy jest w tablicy. Za każdym razem mój program źle to robi. Jakieś sugestie czego powinienem tutaj użyć ? Pętle, jakieś konkretne funkcje ?
komentarz 12 listopada 2019 przez j23 Mędrzec (194,920 p.)
Użyj pętli.

Podobne pytania

0 głosów
1 odpowiedź 2,842 wizyt
pytanie zadane 22 listopada 2016 w C i C++ przez Medium0 Nowicjusz (120 p.)
+1 głos
1 odpowiedź 247 wizyt
0 głosów
1 odpowiedź 1,137 wizyt
pytanie zadane 3 stycznia 2016 w C i C++ przez CichoCiemny Początkujący (480 p.)

92,556 zapytań

141,404 odpowiedzi

319,560 komentarzy

61,942 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...