Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Wyszukiwanie x w tablicy

Ostatnio zmodyfikowano 2014-12-19 19:01
Autor Wiadomość
hariboss
Temat założony przez niniejszego użytkownika
Wyszukiwanie x w tablicy
» 2014-12-19 17:18:56
Witam, mam problem z tablicami, a dokładniej z wyszukaniem liczby x wczytywanej z klawiatury. Wczoraj napisałem dobrze program, później coś zmieniłem i nie mogę teraz tego poprawic :( Proszę o pomoc, pozdrawiam
C/C++
#include <iostream>
#include <cstdlib>
using namespace std;
main()
{
    int i, x;
    int tab[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
    cout << "Czy jest x w tablicy?" << endl;
    for( i = 0; i < 10; i++ )
    {
        cout << tab[ i ] << endl;
    }
    cout << endl;
    cout << "Wprowadz szukana x: "; cin >> x;
   
    if( tab[ i ] == x )
    {
        cout << "Odnaleziono element" << " 1" << endl;
    }
    else
         cout << "Nie odnaleziono elementu" << " 0" << endl;
   
   
    system( "pause" );
    return 0;
}
P-123129
wilkoo13
» 2014-12-19 17:32:39
Ponieważ twój program sprawdzi czy x jest w tab gdzie i masz niezainicjowane
P-123130
michal11
» 2014-12-19 17:38:23
Nie przeszukujesz tablicy tylko sprawdzasz czy jej ostatni element jest równy x.
P-123131
NopeDotAvi
» 2014-12-19 17:41:14
1. Wprowadzasz elementy do tablicy
2. Wczytujesz szukaną liczbę
3. Sprawdzasz za pomocą pętli całą tablice, jeżeli x jest równe elementowi tablicy to element się znajduje.
P-123132
hariboss
Temat założony przez niniejszego użytkownika
» 2014-12-19 17:57:36
Dziękuje za pomoc, działa :) Mam jednak jeszcze jeden problem, jeżeli nie znajduje elementu w tab dla każdego i wyświetla "Nie odnaleziono" jak wyświetlić to tylko raz ?
P-123135
Cornel9192
» 2014-12-19 18:05:01
Nie rozumiem pytania, z powyższego kodu wynika że wyświetli się tylko raz bo nie jest w pętli for.
A jak wyświetlić raz ? Normalnie, na pewno nie w pętli ;p
P-123136
hariboss
Temat założony przez niniejszego użytkownika
» 2014-12-19 18:13:30
Chodzi mi o to, żeby sprawdziło i wyświetliło na końcu odnaleziono lub nie, w tej chwili jeżeli x=3, wyświetli 3 razy nie odnaleziono, dla x=3 odnaleziono i do końca nie odnaleziono. Tak wiem, to jest pętla i inaczej nie będzie, ale mi chodzi o to, żeby po wpisaniu x wyświetliło od razu czy jest taka liczba w tablicy czy nie ;p trochę zamieszałem ale mam nadzieję, że wiadomo o co chodzi :)

EDIT
zadeklarowałem x jako zmienna double i wszystko działa tak jak chciałem, poniżej wklejam kod, dziękuję za pomoc :)

C/C++
#include <iostream>
#include <cstdlib>
using namespace std;
main()
{
    int i;
    double x;
    int tab[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
    cout << "Czy jest x w tablicy?" << endl;
    for( i = 0; i < 10; i++ )
    {
        cout << tab[ i ] << endl;
    }
    cout << endl;
    cout << "Wprowadz szukana x: "; cin >> x;
   
    if( tab[ i ] == x )
    {
        cout << "Odnaleziono element" << " 1" << endl;
       
    }
    else
         cout << "Nie odnaleziono elementu" << " 0" << endl;
   
   
    system( "pause" );
    return 0;
}
P-123138
michal11
» 2014-12-19 18:42:10
eee, możesz powiedzieć co ci tu niby działa ?

Jeżeli nie chcesz , żeby ciągle się wyświetlało, że nie znaleziono możesz dać flagę boolowską i wyświetl komunikat po pętli.
C/C++
bool show = true;
for()
{
    if( znaleziono )
    {
        show = false;
    }
}
if( show )
{
    cout << "nie znaleziono";
}
P-123141
« 1 » 2
  Strona 1 z 2 Następna strona