Wypisywanie liczb całkowitych i sprawdzanie czy występuje w nich zmienna "a"

0

Potrzebuję pomocy w tym zadaniu z kursu. Trzeba tu wykorzystać pętle for oraz tablice.
https://main2.edu.pl/c/konkurs-wstepu-do-programowania/p/pie/

#include <iostream>
using namespace std;

int main() {
  int n, a;
  cin >> n >> a;
int t[n];
for (int i=0;i<n;i++)
    cin >> t[i];
for (int i=1;i<n+1;i++)
    {if (t[i-1]==a)
    cout << i << " ";}
 }

Dla danych 7 3
1 3 4 3 4 3 1
Program wypisuje : 2 4 6

0

Up, doszedłem do tego

using namespace std;

int main() {
  int n, a;
  cin >> n >> a;
int t[n];
for (int i=0;i<n;i++)
    cin >> t[i];
    int c;
for (int v=1;v<n+1;v++)
    {if (t[v-1]==a)
     c=v;
     else c=-1;
 } int d;
for (int f=n;f>=1;f--)
{ if (t[f-1]==a)
d=f;
else d=-1;

} cout << d << " " << c << endl;
}
0

Dla tych którzy będą mieli problemy z tym zadaniem:

#include <iostream>
using namespace std;

int main() {
  int n, a;
  cin >> n >> a;
int t[n];
for (int i=0;i<n;i++)
    cin >> t[i];
    int c=0;
for (int v=1;v<n+1;v++)
    {if (t[v-1]==a)
     c=v;} int d=0;
for (int f=n;f>=1;f--)
{ if (t[f-1]==a)
d=f;
} if (d==0&&c==0)
cout << -1 << " " << -1 << endl;
else cout << d << " " << c << endl;
}
1

To zadanie rozwiązuje się bez tablic. Podpowiem:

#include <iostream>

using namespace std;

int main() {
	// XXX: Zawsze nazywaj zmienne w odniesieniu do problemu a nie.. alfabetu :-/
	unsigned long ilosc_notowan;	// n z zadania
	unsigned long notowanie;		// x z zadania
	
	long pierwszy_index = -1;
	long ostatni_index = -1;
	unsigned long wprowadzane_notowanie;

	cin >> ilosc_notowan >> notowanie;

	// Poszukiwanie indeksów notowań
	for(unsigned long i = 0; i < ilosc_notowan; ++i) {
		cin >> wprowadzane_notowanie;
		if(wprowadzane_notowanie == notowanie) {
			// tu Twoje warunki sprawdzenia i ustawiania pierwszy_index i ostatni_index
		}
	}	
	cout << pierwszy_index << ' ' << ostatni_index << '\n';
} 

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