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

Ввести двумерный массив A_N+M . Все элементы, которые кратны 4 и стоят на позициях, у которых как минимум один из индексов чётный, разделить нацело на 4. Массив вывести до и после преобразования. С++

👇
Ответ:
vikaivanyk
vikaivanyk
09.09.2020

#include <iostream>

#include <vector>

using namespace std;

void input(vector<vector<int>> &vec){

   for(int i = 0; i < vec.size(); i++)

       for(int j = 0; j < vec[i].size(); j++)

           cin >> vec[i][j];

}

void print(vector<vector<int>> &vec){

   for(int i = 0; i < vec.size(); i++){

       for(int j = 0; j < vec[i].size(); j++)

           cout << vec[i][j] << " ";

       cout << "\n";

   }

}

void modify(vector<vector<int>> &vec){

   for(int i = 0; i < vec.size(); i++)

       for(int j = 0; j < vec[i].size(); j++)

           if(vec[i][j] % 4 == 0 && (i*j) % 2 == 0)

               vec[i][j] /= 4;

}

signed main() {

   int n,m;

   cin >> n >> m;

   vector<vector<int>> a(n,vector<int>(m));

   input(a);

   cout << "BEFORE:\n";

   print(a);

   modify(a);

   cout << "AFTER:\n";

   print(a);

}

4,4(59 оценок)
Открыть все ответы
Ответ:
В основу решения возьму тот факт, что точка лежит внутри треугольника только в том случае, если сумма площадей трех образованных этой точкой и вершинами треугольников треугольников равна площади самого треугольника. Для нахождения площади треугольников использую формулу векторного произведения, деленного пополам.

#include <stdio.h>
#include <stdlib.h>

using namespace std;

int main() {
  int x1, y1, x2, y2, x3, y3, x0, y0;
  scanf("%d%d%d%d%d%d%d%d", &x1, &y1, &x2, &y2, &x3, &y3, &x0, &y0);
  if (abs((x1 - x0) * (y2 - y0) - (x2 - x0) * (y1 - y0)) +
      abs((x1 - x3) * (y0 - y3) - (x0 - x3) * (y1 - y3)) +
      abs((x0 - x3) * (y2 - y3) - (x2 - x3) * (y0 - y3)) ==
      abs((x1 - x3) * (y2 - y3) - (x2 - x3) * (y1 - y3)))
  {
    printf("YES");
  } else {
    printf("NO");
  }
  return 0;
}
4,5(88 оценок)
Ответ:
mjsden80
mjsden80
09.09.2020
// PascalABC.NET 3.1, сборка 1250 от 28.05.2016
begin
  var a:=-1.32;
  var b:=1.49;
  var h:=0.11;
  var y1:=-14.0;
  var y2:=17.0;
  var k:=0;
  var x:=a;
  while x<=b do begin
    var y:=Tan(x);
    if (y>=y1) and (y<=y2) then begin
      Writeln('x=',x:5:2,'  y=',y:7:4);
      Inc(k)
      end;
    x+=h
    end;
  Writeln('Найдено значений: ',k)
end.

Результат
x=-1.32  y=-3.9033
x=-1.21  y=-2.6503
x=-1.10  y=-1.9648
x=-0.99  y=-1.5237
x=-0.88  y=-1.2097
x=-0.77  y=-0.9697
x=-0.66  y=-0.7761
x=-0.55  y=-0.6131
x=-0.44  y=-0.4708
x=-0.33  y=-0.3425
x=-0.22  y=-0.2236
x=-0.11  y=-0.1104
x= 0.00  y= 0.0000
x= 0.11  y= 0.1104
x= 0.22  y= 0.2236
x= 0.33  y= 0.3425
x= 0.44  y= 0.4708
x= 0.55  y= 0.6131
x= 0.66  y= 0.7761
x= 0.77  y= 0.9697
x= 0.88  y= 1.2097
x= 0.99  y= 1.5237
x= 1.10  y= 1.9648
x= 1.21  y= 2.6503
x= 1.32  y= 3.9033
x= 1.43  y= 7.0555
Найдено значений: 26
4,7(61 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ