Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 17.09.2021
Сообщений: 16

Определить какой из массивов имеет наименьшее количество элементов, обратная величина которых меньше заданного значения

29.10.2021, 15:14. Показов 902. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задали задачку. Заданы 3 одномерных массива различной длины. Используя подпрограммы, определить, какой из трех массивов имеет: Наименьшее количество элементов, обратная величина которых меньше R. Предположить, что такие элементы имеются. Написал код. Массивы формируются, но условие не выполняется. Подскажите где ошибка.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#include <iostream>
#include <ctime>
using namespace std;
 
void Random (double*x, size_t N)
{
    for (size_t i = 0; i < N; i++)
    {
    x[i]=rand()%9 + 1;
    cout <<x[i]<<" ";
    }
    cout << endl;
}
 
void Sravnenie (double*x, size_t N)
{
int R;
 cout << "R:";
cin >> R;
int counter=0;
 for ( int i=0; i< N; i++) {
 
    if(x[1/i]<R && x[i]!=0) {
 
    counter++;
 
    cout << counter;
 
    }  else {
 
cout <<" net chisel menjshe chem " << R;
    }
 }
}
int main()
{
    srand((int)time(0));
 
    const size_t n1 = 3; 
    double a[n1];
 
    const size_t n2 = 5;
    double b[n2];
 
    const size_t n3 = 7;
    double c[n3];
 
    Random (a, n1);
    Random (b, n2);
    Random (c, n3);
 
    Sravnenie (a, n1);
    Sravnenie (b, n2);
    Sravnenie (c, n3);
 
system("pause");
return 0;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.10.2021, 15:14
Ответы с готовыми решениями:

Какой из массивов имеет наименьшее число элементов со значениями,отличающимися от заданного числа
2)Даны три массива: А(15х10),В(20х4) и С(10х6).Какой из массивов имеет наименьшее число элементов со значениями,отличающимися от заданного...

Найти минимальную сумму элементов среди трёх массивов,абсолютная величина которых меньше заданного числа P.
Даны три одномерных массива А из 15,В из 20 и C из 10 элементов соответственно.Какой из массивов имеет минимальную сумму...

Определить количество элементов массива, старший десятичный разряд которых меньше заданного значения
Здравствуйте! Помогите помочь студенту) Непосредственно само задание: В одномерном массиве, состоящем из N целых элементов,...

2
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
30.10.2021, 12:47
Цитата Сообщение от Bignoise Посмотреть сообщение
Подскажите где ошибка
основная ошибка здесь: x[1/i] зачем делить на индекс ? проверка на ноль x[i]!=0 не нужна, так как массив заполняется положительными

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
void Random (double *x, int N)
{
    for (int i = 0; i < N; i++)    
        x[i]=rand()%9 + 1;   
}
 
int Count (double *x, int N, double R)
{
    int count=0;
    for (int i = 0; i < N; i++) 
        if(1./x[i]<R-1.e-9) count++;  
    return count;
}
 
void Print (double *x, int N, char ch)
{
    cout << "Array " << ch << ":\n";
    for (int i = 0; i < N; i++)             
        cout << x[i] << " ";        
    cout << "\n";    
} 
 
int main()
{
    srand((int)time(0));
    int n, m, k, min;
    double R;
    cout << "size a = "; cin >> n;
    cout << "size b = "; cin >> m;
    cout << "size c = "; cin >> k;
    cout << "R = "; cin >> R;
    
    double *a = new double[n];
    double *b = new double[m];
    double *c = new double[k];
    
    Random(a,n);
    Print(a,n,'a');
    Random(b,m);
    Print(b,m,'b');
    Random(c,k);
    Print(c,k,'c');
    
    int count_a=Count(a,n,R);
    int count_b=Count(b,m,R);
    int count_c=Count(c,k,R);
    
    min=count_a;
    if(count_b<min) min=count_b;
    if(count_c<min) min=count_c;
    
    cout << "Result:\n";
    if(count_a==min) cout << "Array a\n";
    if(count_b==min) cout << "Array b\n";
    if(count_c==min) cout << "Array c\n";
    
    delete[]a;
    delete[]b;
    delete[]c;
system("pause");
return 0;
}
1
1 / 1 / 0
Регистрация: 17.09.2021
Сообщений: 16
30.10.2021, 13:47  [ТС]
Спасибо большое. Это я туплю. Весь мозг сломал, как задать сравнение обратного значения элемента массива с заданным числом, особенно, когда до этого с программированием не имел знакомства. Школьная программа из двух уроков на Basic не в счёт.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.10.2021, 13:47
Помогаю со студенческими работами здесь

Определить, какой из элементов в массиве имеет наименьшее количество делителей
Определить какой из элементов в массиве имеет наименьшее количество делителей,количество элементов в массиве вводится с клавиатуры. ...

Определить какой из элементов в массиве имеет наименьшее количество делителей
Определить какой из элементов в массиве имеет наименьшее количество делителей,количество элементов в массиве вводится с клавиатуры.(Прогу...

Определить, какой из элементов в массиве имеет наименьшее количество делителей
Определить, какой из элементов в массиве имеет наименьшее количество делителей. Формат ввода В первой строке дано натуральное число...

Определить, какой из элементов в массиве имеет наименьшее количество делителей
Написать программу на Pascal. Определить, какой из элементов в массиве имеет наименьшее количество делителей. Условия к задаче: ...

Массив: Определить, какой из элементов в массиве имеет наименьшее количество делителей.
Написать программу на С++. Определить, какой из элементов в массиве имеет наименьшее количество делителей. Условия к задаче: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru