Загрузка...

C++ tasks

Thread in C/C++ created by lugenlord Sep 17, 2017. 398 views

  1. lugenlord
    lugenlord Topic starter Sep 17, 2017 20 Mar 11, 2017
    Крч только начал учить си++, 1курс все дела, задают задачи, я вроде бы учу, понимаю что да как, но логически правильно составить решение к задаче не могу. Не получается расписать код и все такое.
    Задали "задан одномерный массив из n, n меньше или равен 10000, каждый элемент массива меньше или равно n, подсчитать сколько раз встречается каждый элемент". И я попытался написать, но у меня получилась какая-то дичь.
    Code
    #include <iostream>
    using namespace std;

    int main()

    {
    setlocale(LC_ALL, "rus");
    int i = 0;
    const int size = 10000;
    char str[10000];
    int arr[size];
    arr[I] = rand() % 9999 + 1;
    cout « arr[I] « endl;

    int elem[10000] = { 0 };

    for (int i = 0; i < size; i++)
    elem[str[I]]++;

    for (i = 0; i < size; i++)
    if (elem[I])
    cout « "Элемент '" « int(i) « "' встречается " « elem[I] « " раз" « endl;
    system("pause");
    return 0;
    }[/I][/I][/I][/I][/I]
     
  2. Andrew_Linberg
    Andrew_Linberg Sep 17, 2017 :curator: 12,478 Aug 3, 2017
    А зачем ты адрес первой ячейки меняешь то?
     
  3. lugenlord
    lugenlord Topic starter Sep 17, 2017 20 Mar 11, 2017
    Да не знаю, вообще запутался, я еще применять все это не научился
     
  4. Andrew_Linberg
    Andrew_Linberg Sep 17, 2017 :curator: 12,478 Aug 3, 2017
    Ну я вроде как понял что ты хотел сделать. Ты хотел заполнить массив случайными числами. А вместо этого менял адрес первой ячейки массива на случайное число от 1 до 10000
    Вместо: arr = rand()%9999+1
    Это:
    for (int i=0; i<10000; i++)
    arr=rand()%9999+1;
    Потому чтонадо числа для каждой ячейки, а не только для одной. Чтобы использовать рандом надо подключить библиотеку:
    #inlcude <cmath>
    Вместо: elem[str]++;
    Это: elem[arr]++;
    Убери char[str]
    Там где int elem[10000] = {0} не уверен что в твоем компиляторе заполнится нулями.
     
  5. lifeisagame
    lifeisagame Sep 17, 2017 ... 141 Jul 14, 2017
    подключи библиотеку для system("pause")
     
  6. lifeisagame
    lifeisagame Sep 17, 2017 ... 141 Jul 14, 2017
    cout « "Элемент '" « int(i) « "' встречается " « elem « " раз" « endl;
    В ковычках латиницой пиши
     
Loading...
Top