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

№1

1. Понятие структурного программирования. Базовые алгоритмические структуры.

2. Составить графический алгоритм вычисления разности 254 и 152.

№2

1. Сложные алгоритмические структуры. Этапы решения задач на ЭВМ.

2. Составить программу на языке Турбо Паскаль для вычисления суммы 85 и 15.

№3

1. Алгоритм, его свойства и описания.

2. Составить программу на языке Турбо Паскаль для вычисления разности 85 и 15.

👇
Открыть все ответы
Ответ:
Xela936
Xela936
30.05.2022
Python

//Чтобы присваивать элементам массива рандомные значения

import random

mlist = [random.randint(-100, 100) for i in range(15)]

sum = 0

amount = 0

//Индексная переменная "i" идёт по каждому элементу массива

for i in range (len(mlist)):

   if mlist[i]%3 == 0: //Если число кратно 3, переменная "sum" складывается с ней

       sum += mlist[i]

   if(mlist[i])>0: //Если число больше нуля, переменная "amount" увеличивается на 1.

       amount += 1

   

print(mlist, '\nThe sum: ', sum, '\nThe amount: ', amount)

4,6(96 оценок)
Ответ:
Мамаева2007
Мамаева2007
30.05.2022

Основное действие оставил функцией, так как проще потом осуществлять вызов в зависимости от того, какой массив больше

ответ (вариант исполнения 1):

#include <iostream>

using namespace std;

bool IsInclude(int* Find, int* Suorce, int sizeFind, int sizeSuorce);

int main()

{

int *A, *B, NA, NB;

setlocale(LC_ALL, "rus");

bool result;

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

cin >> NA;

A = new int[NA];

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

for (int i = 0; i < NA; i++) { cout << "A["<< i << "] = "; cin >> A[i]; }

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

cin >> NB;  

B = new int[NB];

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

for (int i = 0; i < NB; i++) { cout << "B[" << i << "] = "; cin >> B[i]; }

//Тепеь смотрим какой массив длиннее и в зависимости от этого запускаем функцию по разному

if (NA > NB)

{

 result = IsInclude(B, A, NB, NA);

 if (result) cout << "Массив B входит в массив A";

 else cout << "Массив B не входит в массив A";

}

else {

 result = IsInclude(A, B, NA, NB);

 if (result) cout << "Массив A входит в массив B";

 else cout << "Массив A не входит в массив B";

}

delete[] A;

delete[] B;

return 0;

}

bool IsInclude(int* Find, int* Suorce, int sizeFind , int sizeSuorce)

{

int CountInSuorce, CountInFind;

for (int i = 0; i < sizeFind; i++) { // Перебираем по одному все элементы меньшего массива  

 CountInSuorce = 0;

 CountInFind = 0;

 for (int j = 0; j < sizeSuorce; j++)

 {

  if (Find[i] == Find[j] && j < sizeFind) CountInFind++; // Считаем сколько раз элемент искомого массива находится в нём самом

  if (Find[i] == Suorce[j]) CountInSuorce++; // Считаем сколько раз элемент искомого массива встретился в большем массиве

 }

 if (CountInFind > CountInSuorce) return false;// Если счётчик элементов в искомом массиве оказался больше чем в большем массиве, значит выходим и дальше не имеет смысла искать

}

return true;// Если счётчики большего массива были всегда не меньше счетчика искомого массива, то мы попадём сюда и меньший массив можно составить из элементов большего

}

ответ (вариант исполнения 2):

#include <iostream>

using namespace std;

int IsInclude(int* First, int FirstCount, int* Second, int SecondCount);

int main()

{

int* A, * B, NA, NB;

setlocale(LC_ALL, "rus");

int result;

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

cin >> NA;

A = new int[NA];

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

for (int i = 0; i < NA; i++) { cout << "A[" << i << "] = "; cin >> A[i]; }

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

cin >> NB;

B = new int[NB];

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

for (int i = 0; i < NB; i++) { cout << "B[" << i << "] = "; cin >> B[i]; }

result = IsInclude(A, NA, B, NB);

switch (result) {

 case 0: {cout << "Массивы A и B не входят друг в друга"; break; }

 case 1: {cout << "Массивы A и B имеют одинаковые элементы"; break; }

 case 2: {cout << "Массив A входит в массив B"; break; }

 case 3: {cout << "Массив B входит в массив A"; break; }

}

delete[] A;

delete[] B;

return 0;

}

int IsInclude(int* First, int FirstCount, int* Second, int SecondCount) // возвращаем 0 если массив не входид в другой, 1 если они одинаковые, 2 если первый входит во второй, 3 если второй входит в первый

{

int *Source, * Find, sizeSource, sizeFind, CountInSource, CountInFind;

bool Equal; // Флаг того что элементы одинаковые

bool AandB = FirstCount > SecondCount;

if(AandB)

{

 Source = First;

 sizeSource = FirstCount;

 Find = Second;

 sizeFind = SecondCount;

}

else  

{

 Find = First;

 sizeFind = FirstCount;

 Source = Second;

 sizeSource = SecondCount;

}

if (sizeFind == sizeSource) Equal = true;

else Equal = false;

for (int i = 0; i < sizeFind; i++) { // Перебираем по одному все элементы меньшего массива  

 CountInSource = 0;

 CountInFind = 0;

 for (int j = 0; j < sizeSource; j++)

 {

  if (Find[i] == Find[j] && j < sizeFind) CountInFind++; // Считаем сколько раз элемент искомого массива находится в нём самом

  if (Find[i] == Source[j]) CountInSource++; // Считаем сколько раз элемент искомого массива встретился в большем массиве

 }

 if (CountInFind > CountInSource) return 0;// Если счётчик элементов в искомом массиве оказался больше чем в большем массиве, значит выходим и дальше не имеет смысла искать

 if (CountInFind != CountInSource) Equal = false; // Если количество в искомом и большом получилось различное, то сбрасываем флаг

}

// Если счётчики большего массива были всегда не меньше счетчика искомого массива, то мы попадём сюда и меньший массив можно составить из элементов большего

if (Equal) return 1; // если флаг не сброшен, то возврвщаем 1

if (!Equal && AandB) return 3; // если флаг не сброшен, то возврвщаем 1

else return 2;

}

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