👤

programowanie C++
Napisz program w którym:
a. Zadeklaruj tablicę 500 liczb całkowitych;
b. Wypełnij ją losowo wybranymi wartościami z przedziału <0,100);
c. Sprawdzi i wypisze ile razy w tablicy wystąpiła wielokrotność 17;
d. Sprawdzi i wypiszę ile razy na ekranie wystąpiły cyfry i która z nich występuje najczęściej;
e. Zamieni dwa wskazane przez użytkownika elementy tablicy;
f. Zsumuje elementy tablicy o indeksach parzystych, wynik wypisze na ekranie;
g. Znajdzie i wypisze indeks ostatniego wystąpienia cyfry 0 w tablicy;


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