М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
dachapetruchka
dachapetruchka
30.06.2020 17:33 •  Информатика

Указания к решению: 1) Для проверки на соответствие элементов массива условию создать функцию. 2) Для вывода массива создать функцию, в которую передавать массив через параметр. 3) Массив заполнять с датчика случайных чисел. Язык программирования C++

Дан массив натуральных чисел A(N), значения элементов которого лежат в диапазоне [1, 200].

ЗАДАНИЕ. Найти кол-во тех элементов массива, которые являются палиндромами(т.е. читаются одинаково слева направо и справа налево), а также найти минимальный элемент среди тех,цифровая запись которых содержит цифру 0 и не содержит цифру 8.

👇
Ответ:
irinakotik2018
irinakotik2018
30.06.2020

#include <iostream>

#include <cmath>

#include <ctime>

using namespace std;

int counter = 0, _min = 201;

void palindrome(int number)

{

   int number_cpy = number;

   int n = 0;

   while (number)

   {

       n = 10 * n + number % 10;

       number /= 10;

   }

   if (n == number_cpy) {

       counter++;

   }

}

void SearchMin(int number) {

   bool C8 = false, C0 = false;

   int cpy_number = number;

   while (number > 0) {

       if (number % 10 == 8) {

           C8 = true;

           break;

       }

       if (number % 10 == 0)

           C0 = true;

       number /= 10;

   }

   if (C8 == false && C0 == true && cpy_number < _min)

       _min = cpy_number;

}

void SetElements(int num[], int N) {

   for (int i = 0; i < N; i++) {

       num[i] = 1 + rand() % 200;

       palindrome(num[i]);

       SearchMin(num[i]);

   }

}

void PrintElements(int num[], int N) {

   cout << "Элементы массива: " << endl;

   for (int i = 0; i < N; i++) {

       cout << num[i] << " ";

   }

   cout << endl;

}

signed main()

{

   setlocale(LC_ALL, "Rus");

   srand(time(NULL));

   int N;

   cout << "Введите количество элементов массива: ";

   cin >> N;

   int *a = new int[N];

   SetElements(a, N);

   PrintElements(a, N);

   cout << "\nКоличество палиндромов: " << counter << endl;

   if (_min == 201)

       cout << "Нет элементов, которые не содержат 8, но содержат 0!";

   else

       cout << "\nМинимальный элемент, который не содержит цифру 8, но содержит цифру 0: " << _min << endl;

   delete[] a;

   return 0;

}


Указания к решению: 1) Для проверки на соответствие элементов массива условию создать функцию. 2) Дл
4,8(68 оценок)
Открыть все ответы
Ответ:
Аліномаг
Аліномаг
30.06.2020
P.S.

Тернарная операция в C++ - это выражение вида (b ? x : y) (где b - логическое выражение, а x и y - одного типа). Она вернёт x, если выражение b истинно, и y, если b ложно.


Решение

В приложении расписаны координаты некоторых клеток, а также помечены точками те, которые по цвету отличаются от не помеченных. Если поискать, что у них общего, можно обнаружить, что у "невыколотых" клеток сумма координат по горизонтали и вертикали - чётная. Это "свойство" и используем для определения цвета клетки.


Код

#include <bits/stdc++.h>

using namespace std;

int main() {

 int x1, y1, x2, y2;

 cin >> x1 >> y1 >> x2 >> y2;

 cout << ((x1 + y1) % 2 == (x2 + y2) % 2 ? "YES" : "NO") << endl;

 return 0;

}



На с++ с тернарной операцией поле шахматной доски определяется парой натуральных чисел, каждое из ко
4,6(79 оценок)
Ответ:
irinkaokhotina
irinkaokhotina
30.06.2020

Давай сравним все 4 числа между собой, найдём максимальное и вычтем из него N.


Код

#include <bits/stdc++.h>

using namespace std;

int main() {

   int a, b, c, d, n;

   cin >> a >> b >> c >> d >> n;

   if (a > b && a > c && a > d)

       a -= n;

   else if (b > a && b > c && b > d)

       b -= n;

   else if (c > a && c > b && c > d)

       c -= n;

   else d -= n;

   cout << a << " " << b << " " << c << " " << d << endl;

   return 0;

}

4,4(44 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ