В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
исма19
исма19
24.10.2021 11:20 •  Информатика

C++ используя динамические массивы напишите 2 варианта программы

1) через явное разыменование указателя

2) через индексы

сама программа должна найти произведение двух матриц и минимальный элемент полученой матрицы.

Показать ответ
Ответ:
vetraven
vetraven
30.12.2021 07:10

Процессор AMD A10-5745M APU Частота‎: ‎2100 - 2900 MHz,Количество ядер‎: ‎4. для мощный ноутбук нужен 3100 MHz, и норм 8гб озу.2гб видео карта. гта 5 для мощный ноутбуков.

Процессор: Intel Core 2 Quad CPU Q6600 @ 2.40GHz (4 CPUs) / AMD Phenom 9850 Quad-Core Processor (4 CPUs) @ 2.5GHz

Оперативная память: 4GB

Видеокарта: NVIDIA 9800 GT 1GB / AMD HD 4870 1GB (DX 10, 10.1, 11)

для монтажа видео (для Premiere Pro) нужен Минимальные 8 ГБ ОЗУ Процессор Intel® 6-го поколения или новее — или аналогичный процессор AMD 2 ГБ видеопамяти .Рекомендуемые 16 ГБ ОЗУ Процессор Intel® 7-го поколения или новее — или аналогичный процессор AMD 4 ГБ видеопамяти.

твой ноут неплохое :)

0,0(0 оценок)
Ответ:
kassaalevtina
kassaalevtina
23.06.2021 01:55
1.1. Количество нечетных чисел в заданном промежутке можно легко найти, зная что нечетные числа следуют через одно, чередуясь с четными. Конечно, можно написать в программе цикл и перебрать все нечетные элементы, каждый раз добавляя по +1 в счетчик количества, но гораздо проще воспользоваться знаниями из математики. Легко видеть, что нечетные числа образуют арифметическую прогрессию с разностью d=-2, начальный член a1=7, а конечный член an=-3.
Вспомним формулу для n-го члена арифметической прогрессии и получим из нее n.
\displaystyle a_n=a_1+d(n-1) \to n= \frac{a_n-a_1}{d}+1
В соответствии с условиями нашей задачи это будет верно, если a1 и an - нечетные. Если a1 четное, то его надо уменьшить на 1. Аналогично, если an четное, его надо увеличить на 1. Таким образом, мы получаем алгоритм, пригодный для быстрого определения количества нечетных чисел на любом интервале с целочисленными границами.
Ниже приводится соответствующая программа.

program p11;
var
  a,b,n:integer;
begin
  Write('Введите границы интервала: '); Readln(a,b);
  { защита от неверного порядка ввода }
  if a<b then begin n:=a; a:=b; b:=n end;
  { если надо, корректируем границы на нечет }
  if (a mod 2)=0 then a:=a-1;
  if (b mod 2)=0 then b:=b+1;
  { сам расчет }
  n:=(a-b) div 2 + 1;
  Writeln('Количество нечетных чисел на интервале равно ',n)
end.

Тестовое решение:
Введите границы интервала: -3 7
Количество нечетных чисел на интервале равно 6

1.2 В противоположность предложенному решению, где сначала надо было думать, можно использовать "метод грубой силы" (программисты называют его "брутфорс" - от английского bruteforce), т.е. программировать ни о чем не думая.
Ниже - пример такого решения. Оно более короткое, но при больших интервалах время решения окажется на несколько порядков больше.

program p12;
var
  a,b,i,k:integer;
begin
  Write('Введите границы интервала: '); Readln(a,b);
  { защита от неверного порядка ввода }
  if a<b then begin k:=a; a:=b; b:=k end;
  k:=0;
  for i:=a downto b do
    if (i mod 2)<>0 then k:=k+1;
  Writeln('Количество нечетных чисел на интервале равно ',k)
end.

Тестовое решение:
Введите границы интервала: -3 7
Количество нечетных чисел на интервале равно 6

2.1. Тут задача на первый взгляд стандартная и вроде бы думать нечего - в цикле накапливаем сумму:

program p21;
var
  i:integer;
  x,s:real;
begin
  Write('Введите значение x: '); Readln(x);
  s:=0; i:=2;
  while i<=20 do begin s:=s+i*x; i:=i+2 end;
  Writeln('Cумма членов последовательности равна ',s)
end.

Тестовое решение:
Введите значение x: 2.15
Cумма членов последовательности равна 236.5

2.2. Но и тут есть место для размышлений. Опять вспоминаем математику.
\displaystyle s=\Sigma_{i=2}^{20}(x\times i), \ i=2k, \ k \in &#10;\mathbb N \\ s=x\times \Sigma_{k=1}^{10}(2\times &#10;k)=2x\times\Sigma_{k=1}^{10}k
Но полученная сумма - это сумма арифметической прогрессии с начальным членом, равным единице,  конечным членом, равным 10 и разностью 1. Формула такой суммы известна и мы продолжаем преобразования.
\displaystyle s=2x\times \frac{a_1+a_n}{2}\times n=n\times &#10;x\times(a_1+a_n); \\ a_1=1; \ a_n=10; \ n=a_n-a_1+1=10-1+1=10; \\ &#10;s=10\times x\times11=110\times x
Теперь можно и программу написать.

program p22;
var
  x:real;
begin
  Write('Введите значение x: '); Readln(x);
  Writeln('Cумма членов последовательности равна ',110*x)
end.

Тестовое решение:
Введите значение x: 2.15
Cумма членов последовательности равна 236.5

Пары приведенных решений призваны показать, что первое пришедшее в голову решение обычно всегда не лучшее. А еще - что для качественного программирования надо учить математику.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота