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

Выполнить табулирование функции y=sin2x+2, на отрезке [-2; 2] с шагом (0,5) с использованием (пока) и (до). в паскале.

👇
Открыть все ответы
Ответ:
MariaVay000
MariaVay000
08.01.2020

#include <iostream>

#define tsar c++

using namespace std;

int segfault() {

   int* ptr; ptr = 0;

   return *ptr;

}

int main() {

   unsigned int n; cin >> n;

   unsigned int m; cin >> m;

   auto array = new int*[n];

   for (size_t idx = 0; idx < n; idx++) {

       array[idx] = new int[m];

       for (size_t idy = 0; idy < m; idy++)

            cin >> array[idx][idy];

   }

   unsigned int a; cin >> a;

   unsigned int b; cin >> b;

   int res = 0;

   for (size_t idx = a - 1; idx < b; idx++) {

       for (size_t idy = 0; idy < m; idy++)

           res += array[idx][idy];

   }

   cout << res;

   delete array;    

}

Объяснение:

4,4(28 оценок)
Ответ:
Nastyacat200809
Nastyacat200809
08.01.2020
1) Все правильно, это и будет разность между максимумом и минимумом
program one;
var input,max,min:integer;
    i:integer;
begin
  readln(input);
  max:=input;
  min:=input;
  for i:=2 to 25 do begin
    readln(input);
    if input>max then max:=input;
    if input<min then min:=input;
  end;
  writeln(max-min);
end.

2) Гораздо проще не суммировать в цикле степени половины, а воспользоваться тем, что 1+\frac12+...+\frac1{2^n}=2-\frac1{2^n}.
program two;
var res:real;
    i,n:integer;
begin
  readln(n);
  res:=0.5;
  for i:=2 to n do res*=0.5;
  res:=2-res;
  writeln(res);
end.

3) Здесь существует несколько реализации; в частности, можно было просто считать число как строку и возвратить ее в перевернутом виде (ReverseString(s)), не заботясь о переполнении, однако я решил, что по логике задания нужно делать через числа. Впрочем, для выявления случаев переполнения все равно используется переворот строки
program three;
var a,b:int64; {можно использовать uint64, если в вашей среде Паскаля  этот тип поддерживается, тогда число в строке ниже надо заменить}
begin
  readln(a);
  if ReverseString(IntToStr(a))>'9223372036854775807' then writeln('Слишком много') else begin
    while a>0 do begin
      b:=10*b+a mod 10;
      a:=a div 10;
    end;
    writeln(b);
  end;
end.
4,7(21 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ