Odpowiedź :
Odpowiedź:
#include <iostream>
#include <cstdlib>
#include <time.h>
#include <string>
int main()
{
//zadanie a.
int tablica[500], ilosc, ilosc2, suma = 0, output[500], liczba, liczba2, element, element2, mxCount = 0, najczestsza, naj2;
//zadanie b.
srand(time(NULL));
for (int i = 0; i < 500; i++){
tablica[i] = rand()%100+1;
//zadanie c.
ilosc = tablica[i];
if (ilosc == 17){
ilosc2++;
}
//zadanie f.
if (i % 2 == 0){
suma += i;
}
}
//zadanie d.
for (int i = 0; i < 500; i++){
int count=1;
for (int j=i+1;j<500;j++){
if (tablica[i]==tablica[j]){
count++;
}
}
if (count>mxCount){
mxCount = count;
naj2++;
}
}
for (int i=0;i<500;i++)
{
int count=1;
for (int j=i+1;j<500;j++){
if (tablica[i]==tablica[j]){
count++;
}
}
if (count==mxCount){
najczestsza = tablica[i];
}
}
//zadanie g.
for (int i = 0; i < 500; i++){
output[i] = tablica[500 - i - 1];
liczba = output[i];
if (liczba == 0){
liczba2 = i;
break;
}
}
std::cout << "Liczba 17 w tablicy wystapila " << ilosc2 << " razy.\n";
std::cout << "Najczestsza liczba to " << najczestsza << ", wystapila " << naj2 << " razy.\n";
std::cout << "Suma elementow parzystych tablicy wynosi " << suma << "\n";
if (liczba2 == 0){
std::cout << "Nie znaleziono 0.\n";
}
else {
std::cout << "Liczba 0 wystapila ostatni raz w indeksie " << liczba2 << "\n";
}
//zadanie e.
std::cout << "Zadanie E.\n";
for (int i = 0; i < 2; i++){
std::cout<<"Podaj " << i + 1 << " element tablicy, ktory chcesz zamienic: ";
std::cin >> element;
std::cout << "Podaj wartosc zamienionego elementu: ";
std::cin >> element2;
if (element > 499 || element < 0){
std::cout << "\nNie istnieje taki indeks.\n";
}
else {
tablica[element] = element2;
}
}
return 0;
}
Zadanie D może być zrobione źle, ale ogólnie to wydaję mi się, że wszystko dobrze jest