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

wyszukiwanie w tablicy - problem...

Object Storage Arubacloud
0 głosów
102 wizyt
pytanie zadane 8 listopada 2015 w C i C++ przez rafalmagician Obywatel (1,320 p.)

Witam :) Możecie mi podpowiedzieć co mam zrobić żeby; jak znajdzie element w tablicy to nie wypisywał linii nr 53 ??

#include <iostream>
#include <stdlib.h>
using namespace std;

int main()
{
    int poczatek,koniec;

    cout << "podaj poczatek i koniec przedzialu (poczatek,koniec e N+):" << endl;
    cout << ">> ";
    cin >> poczatek;
        if(poczatek <= 0)
        {
            cout << "podana liczba jest mniejsza od 1..." << endl;
        }
        else
        {
            cout << ">> ";
            cin >> koniec;
                if(koniec <= 0)
                    cout << "podana liczba jest mniejsza od 1..." << endl;

            const int t = (koniec - poczatek) + 1;

        int *tab = new int [t];

            for(int i=poczatek;i<=koniec;++i)
            {
                if(i == koniec)
                {
                    cout << i << endl;
                }
                else
                {
                    cout << i << ", ";
                }
            }

         cout << endl;

            int n;
            cout << "podaj liczbe do znalezienia w zbiorze: " << endl;
            cout << ">> ";
            cin >> n;

            for(int i=poczatek;i<=koniec;++i)
            {
                if(n != i)
                {
                    cout << "-1" << endl;
                    if(i == koniec)
                    {
                        cout << "brak elementu w tablicy..." << endl;
                    }
                }
                else
                {
                    cout << "element " << n << " jest w tablicy..." << endl;
                }
            }

        delete [] tab;
        }

    return 0;
}

Dzięki za pomoc :)

1 odpowiedź

0 głosów
odpowiedź 8 listopada 2015 przez draghan VIP (106,230 p.)
Szukasz tylko jednej liczby, czy wszystkie spełniające kryteria? :)
komentarz 8 listopada 2015 przez rafalmagician Obywatel (1,320 p.)
Tylko 1 liczby.
komentarz 8 listopada 2015 przez draghan VIP (106,230 p.)
To w momencie, kiedy znajdujesz tę liczbę, przerwij pętlę szukającą. ;) Nie dasz wtedy możliwości wykonania się linii 53. w przypadku znalezienia pasującego wyniku.

Jeszcze mam pytanie: zdajesz sobie sprawę, że nie dostajesz tablicy wypełnionej wartościowymi danymi, tylko śmieciami...? I widzisz, że to nie w tablicy szukasz danych? :P
komentarz 8 listopada 2015 przez rafalmagician Obywatel (1,320 p.)

Dokładniek widać na obrazku:

znalazł 4 więc tej ostatniej linii być nie powinno :)

komentarz 8 listopada 2015 przez draghan VIP (106,230 p.)
Ach, działasz w ten sposób - potrzebujesz przedziału kolejnych liczb naturalnych...? Jeśli tak - to niepotrzebna Ci tablica - wystarczy pętla for i odpowiedni warunek. ;)
komentarz 8 listopada 2015 przez rafalmagician Obywatel (1,320 p.)
No powiem że jestem zdziwiony tym że działam na śmieciach :P Ale chyba wiem o co chodzi. O linię 27 ??
komentarz 8 listopada 2015 przez draghan VIP (106,230 p.)
Nie nie nie i tak. ;) Na początku - z pośpiechu i nieuwagi - założyłem, że przeglądasz tablicę, której nie zainicjalizowałeś.

Wartości Twojej tablicy są randomowe, ale jak się przyjrzałem, to nigdzie w kodzie nie odnosisz się do tej tablicy.

To rodzi pytanie: po co Ci ona? :)

Podobne pytania

0 głosów
1 odpowiedź 332 wizyt
pytanie zadane 22 marca 2021 w C i C++ przez CheF123 Początkujący (450 p.)
0 głosów
1 odpowiedź 278 wizyt
0 głosów
2 odpowiedzi 782 wizyt
pytanie zadane 10 sierpnia 2018 w PHP przez niezalogowany

92,568 zapytań

141,424 odpowiedzi

319,634 komentarzy

61,956 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!

...