odwolanie do elementu tablicy w warunku if

0

Dzień dobry,

jestem zupełnym laikiem, poznaje dopiero c++ także jeśli ktoś pokusiłby się o pomoc to proszę o wyrozumiałość i prostotę wyjaśnień.
Mianowicie mam problem z fragmentem krótkiego programu (kompilator wyrzuca błąd tylko w linijce z warunkiem if).Chodzi o napisanie programu, który wczyta z klawiatury np 10 liczb całkowitych. Potem użytkownik zada przedział (a;b] i program ma odpowiedzieć ile wczytanych liczb do tablicy zwiera się w tym przedziale. Ten fragment zapisałem jako:

if((tablica[i]>a)&&(tablica[i]<=b))
{
  ilosc++;
}

Cala reszta działa okej, bo sprawdziłem program bez wpisanego "if"

1

Jaki jest błąd?
Co się (nie)dzieje?

0

Pozwolę sobie wkleić zdjęcie ekranu (jestem w podróży i trochę niekomfortowo byłoby przepisywanie kodu)

3

Czym jest i w Twoim ifie? Nie ma w zadanym scopie obiektu o takiej nazwie. Brakuje Ci pętli for "dookoła" ifa.

0

Tzn ja to u siebie rozumiem ten sposób, że za pomocą pętli for wprowadzam do tablicy wybrane przez siebie liczby (i to działa bo sprawdzałem) no i potem ten przedzial[i] sądziłem że jest odwołaniem do jednej z tych liczb zawartych w tablicy. Naprawdę dość miernie to ogarniam. PS. scope ? nie spotkałem się niestety do tej pory z tym określeniem

0

Jak masz tam tę linijkę 20-tą - do czego odnosi się to i?
Skąd komputer ma wiedzieć, ile wynosi ta wartość?

0

Czytaj błędy kompilacji ze zrozumieniem. Jeśli nie jesteś w stanie rozszyfrować, wklej główną treść błędu w google.
Wyświetli się przynajmniej kilka przykładów związanych z takim błędem.

Scope to zasięg widoczności. Zapoznaj się z tym pojęciem.

Nie korzystaj ze zmiennych globalnych bez powodu. To zła praktyka.
Od początku ucz się dzielić kod na moduły i rozdzielaj zadania, tak aby moduł wykonywał tylko jedną czynność.

0
Patryk27 napisał(a):

Jak masz tam tę linijkę 20-tą - do czego odnosi się to i?
Skąd komputer ma wiedzieć, ile wynosi ta wartość?

no to jak mam wskazać ze ma sprawdzać każdy czyli i-ty element tablicy, którą stworzyłem i która zawiera określone wartości ?

1

no to jak mam wskazać ze ma sprawdzać każdy czyli i-ty element tablicy, którą stworzyłem i która zawiera określone wartości ?

W pętli?

1

no to jak mam wskazać ze ma sprawdzać każdy czyli i-ty element tablicy,

No a jak wskazałeś, że ma wczytywać do i-tego elementu tablicy na samym początku programu?

0

no okej fajnie pętla. wprowadzam wybrane przez siebie wartości przy pomocy for i tutaj idea tego jest dla mnie jasna. Z tym if zupełnie tego "nie czuję" . coś w stylu:

for (int i=0;i<5;i++)
{
if
}  

coś takiego ? oczywiście ten if to w skrócie tu zapisałem (taki jak wcześniej) Wybaczcie moje ciężkie myślenie.

0
#include <iostream>

void Fill(int arr[], int size) {
   // wypiełnianie tablicy
}

int Count(int arr[], int size, int a, int b) {
   int count = 0;
   // zliczanie wystąpień
   return count;
}

int main() {
   const int size = 10;
   int arr[size];
   Fill(arr, size);
   int a, b;
   std::cin >> a >> b;
   std::cout << "Jest " << Count(arr, size, a, b) << " pasujacych elementow.\n";
}
0

Dodałem ten for, o którym wspomniałem w komentarzu zgodnie z sugestią i zadziałało. Dziękuję za pomoc i serio chylę czoła bo dla mnie to czarna magia totalnie. Mam nadzieję, że z czasem trochę lepiej mi pójdzie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1