• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Помогите найти ошибку в коде

alex99lol

Ученик
Регистрация
22 Ноя 2017
Сообщения
1
Реакции
0
Баллы
0
Помогите найти ошибку в коде

Код:
#include <iostream>
#include <cstdlib>
using namespace std;
int arr[10], int_Ar[10];
int main()

{  int s, i, j;
s=0;
for ( i=0; i<=9; i++)
     {arr[i]=rand()%10;
for ( j=0; j<=9; j++)
         {int_Ar[j]=rand()%10;
         if( arr[i]=int_Ar[j])
        {s++;}}}

    cout<<endl;
     cout<< s;

    return 0;
}
задания сравнения елементов двух масивов и нахождения количества совпадений
 
Ничего в СИ не понимаю, языка не знаю, но ошибки вижу.
Например, в операторе "if" вместо логического условия равенства "==" стоит оператор присваивания "=".
 
Помогите найти ошибку в коде
1. Вы пытаетесь сравнивать случайное значение [0...10) с другим случайным значением [0...10) - вероятность (частота) такого совпадения, хотя бы одного, очень малая - 1/10... так что вряд ли вы наловите много совпадений - сама формулировка задачи неудачная.

2. Про if(...) вам уже подсказали:
Код:
if( arr[i]=int_Ar[j])
Это самая обычная и частая ошибка.

3. Не хотите связываться с if(...) и наловить подобных ошибок, можете переписать всё сравнение с подсчётом - просто так:
Код:
s += arr[i] == int_Ar[j] ? 1 : 0;
И будет вам счастье.

4. Поменяйте местами вот эти строки, потому что это тоже бессмыслица записана:
Код:
    cout<<endl;
    cout<< s;

Так что ошибок тут достаточно... tehno015
 
Назад
Сверху