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

Составить алгоритм и блок-схему для решения задачи: Дано четырехзначное число. Верно ли, что цифр в нем расположены по убыванию? Например, 4311 - нет, 4321 - да, 5542 - нет, 5631 - нет, 9871 - да.
Листинг на Pascal, заранее

Показать ответ
Ответ:
ЕленаЧернова
ЕленаЧернова
29.05.2021 04:07
Основа взята на сайте progmatem.ru. К сожалению, автор статьи там не был указан.

// PascalABC.NET 3.1, сборка 1204 от 24.03.2016
uses graphABC;
const
  w=1000;
  h=600;

function f(x:real):=0.5*x*cos(2*x);

begin
  SetWindowSize(w,h);
  // поле для графика в окне
  var xLeft:=50;
  var yLeft:=50;
  var xRight:=w-xLeft;
  var yRight:=h-yLeft;
  // интервалы по осям
  var ax:=-12.0;
  var bx:=12.0;
  var hx:=1.0;
  var ay:=-6.5; // минимум f(x) с запасом
  var by:=6.5;
  var hy:=0.5;
  // масштабы по осям
  var mx:=(xRight-xLeft)/(bx-ax);
  var my:=(yRight-yLeft)/(by-ay);
  // точка начала координат графика
  var x0:=xLeft+Trunc(abs(ax)*mx);
  var y0:=yRight-Trunc(abs(ay)*my);
  // рисование координатных осей
  Line(xLeft,y0,xRight+10,y0);
  Line(x0,yLeft-10,x0,yRight);
  SetFontSize(12); SetFontColor(clBlue);
  TextOut(xRight+15,y0-10,'X');
  TextOut(x0-4,yLeft-30,'Y');
  SetFontSize(8); SetFontColor(clGreen);
  // рисование засечек
  var s:string;
  for var i:=1 to Round((bx-ax)/hx)+1 do begin
    var num:=ax+(i-1)*hx;
    var x:=xLeft+Trunc(mx*(num-ax));
    Line(x,y0-3,x,y0+3);
    Str(num,s);
    if abs(num)>1E-15 then TextOut(x-TextWidth(s) div 2,y0+10,s)
    end;
  for var i:=1 to Round((by-ay)/hy)+1 do begin
    var num:=ay+(i-1)*hy;
    var y:=yRight-Trunc(my*(num-ay));
    Line(x0-3,y,x0+3,y);
    Str(num,s);
    if abs(num)>1E-15 then TextOut(x0+7,y-TextHeight(s) div 2,s)
    end;
    TextOut(x0-10,y0+10,'0');
  // собственно график
  var xi:=ax;
  while xi<=bx do begin
    var yi:=f(xi);
    var x:=x0+Round(xi*mx);
    var y:=y0-Round(yi*my);
    if (y>=yLeft) and (y<=yRight) then SetPixel(x,y,clRed);
    xi+=1e-3
    end
end.

*******************************************
// PascalABC.NET 3.1, сборка 1204 от 24.03.2016
uses graphABC;
const
  w=1000;
  h=600;

function f(x:real):=8*sin(x)*sin(2*x);

begin
  SetWindowSize(w,h);
  // поле для графика в окне
  var xLeft:=50;
  var yLeft:=50;
  var xRight:=w-xLeft;
  var yRight:=h-yLeft;
  // интервалы по осям
  var ax:=-15.0;
  var bx:=15.0;
  var hx:=1.0;
  var ay:=-6.5; // минимум f(x) с запасом
  var by:=6.5;
  var hy:=0.5;
  // масштабы по осям
  var mx:=(xRight-xLeft)/(bx-ax);
  var my:=(yRight-yLeft)/(by-ay);
  // точка начала координат графика
  var x0:=xLeft+Trunc(abs(ax)*mx);
  var y0:=yRight-Trunc(abs(ay)*my);
  // рисование координатных осей
  Line(xLeft,y0,xRight+10,y0);
  Line(x0,yLeft-10,x0,yRight);
  SetFontSize(12); SetFontColor(clBlue);
  TextOut(xRight+15,y0-10,'X');
  TextOut(x0-4,yLeft-30,'Y');
  SetFontSize(8); SetFontColor(clGreen);
  // рисование засечек
  var s:string;
  for var i:=1 to Round((bx-ax)/hx)+1 do begin
    var num:=ax+(i-1)*hx;
    var x:=xLeft+Trunc(mx*(num-ax));
    Line(x,y0-3,x,y0+3);
    Str(num,s);
    if abs(num)>1E-15 then TextOut(x-TextWidth(s) div 2,y0+10,s)
    end;
  for var i:=1 to Round((by-ay)/hy)+1 do begin
    var num:=ay+(i-1)*hy;
    var y:=yRight-Trunc(my*(num-ay));
    Line(x0-3,y,x0+3,y);
    Str(num,s);
    if abs(num)>1E-15 then TextOut(x0+7,y-TextHeight(s) div 2,s)
    end;
    TextOut(x0-10,y0+10,'0');
  // собственно график
  var xi:=ax;
  while xi<=bx do begin
    var yi:=f(xi);
    var x:=x0+Round(xi*mx);
    var y:=y0-Round(yi*my);
    if (y>=yLeft) and (y<=yRight) then SetPixel(x,y,clRed);
    xi+=1e-3
    end
end.

Составьте программу, которая строит график зависимости: а) y(x)=0.5x *cos 2x на промежутке [-12; 12]
Составьте программу, которая строит график зависимости: а) y(x)=0.5x *cos 2x на промежутке [-12; 12]
0,0(0 оценок)
Ответ:
Pakimon4ikYT
Pakimon4ikYT
25.04.2023 20:47

Алгоритм - это система точных и понятных предписаний о содержании и последовательности выполнения конечного числа действий, необходимых для решения любой задачи данного типа.

Примеры: правила сложения, умножения, решения алгебраических уравнений и т.п.

Свойства алгоритма:

1.Универсальность (массовость) - применимость алгоритма к различным наборам исходных данных.

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

3.Конечность - каждое из действий и весь алгоритм в целом обязательно завершаются.

4.Результативность - по завершении выполнения алгоритма обязательно получается конечный результат.

5.Выполнимость (эффективность) - результата алгоритма достигается за конечное число шагов.

6.Детерминированность (определенность) - алгоритм не должен содержать предписаний, смысл которых может восприниматься неоднозначно. Т.е. одно и то же предписание после исполнения должно давать один и тот же результат.

7.Последовательность – порядок исполнения команд должен быть понятен исполнителю и не должен допускать неоднозначности.

Классы алгоритмов.

1.вычислительные алгоритмы, работающие со сравнительно простыми видами данных, такими как числа и матрицы, хотя сам процесс вычисления может быть долгим и сложным;

2.информационные алгоритмы, представляющие собой набор сравнительно простых процедур, работающих с большими объемами информации (алгоритмы баз данных);

3.управляющие алгоритмы, генерирующие различные управляющие воздействия на основе данных, полученных от внешних процессов, которыми алгоритмы управляют.

По типу передачи управления алгоритмы бывают: основные (главные выполняемые программы) и вс (подпрограммы).

Для задания алгоритма необходимо описать следующие его элементы:

1.набор объектов, составляющих совокупность возможных исходных данных, промежуточных и конечных результатов;

2.правило начала;

3.правило непосредственной переработки информации (описание последовательности действий);

4.правило окончания;

5.правило извлечения результатов.

описания алгоритмов.

Символьный, когда алгоритм описывается с специального набора символов (специального языка).

Словесная форма записи алгоритмов обычно используется для алгоритмов, ориентированных на исполнителя-человека. Команды такого алгоритма выполняются в естественной последовательности, если не оговорено противного.

Графическая запись с блок-схем осуществляется рисованием последовательности геометрических фигур, каждая из которых подразумевает выполнение определенного действия алгоритма. Порядок выполнения действий указывается стрелками. Графическая запись алгоритма имеет ряд преимуществ: каждая операция вычислительного процесса изображается отдельной геометрической фигурой и графическое изображение алгоритма наглядно показывает разветвления путей решения задачи в зависимости от различных условий, повторение отдельных этапов вычислительного процесса и другие детали.

Виды блоков.

vbl.jpg

Правила создания блок – схем:

1.Линии, соединяющие блоки и указывающие последовательность связей между ними, должны проводится параллельно линиям рамки.

2.Стрелка в конце линии может не ставиться, если линия направлена слева направо или сверху вниз.

3.В блок может входить несколько линий, то есть блок может являться преемником любого числа блоков.

4.Из блока (кроме логического) может выходить только одна линия.

5.Логический блок может иметь в качестве продолжения один из двух блоков, и из него выходят две линии.

6.Если на схеме имеет место слияние линий, то место пересечения выделяется точкой. В случае, когда одна линия подходит к другой и слияние их явно выражено, точку можно не ставить.

7.Схему алгоритма следует выполнять как единое целое, однако в случае необходимости допускается обрывать линии, соединяющие блоки.

Виды алгоритмов.

В линейном алгоритме операции выполняются последовательно, в порядке их записи. Каждая операция является самостоятельной, независимой от каких-либо условий. На схеме блоки, отображающие эти операции, располагаются в линейной последовательности.

В алгоритме с ветвлением предусмотрено несколько направлений (ветвей). Каждое отдельное направление алгоритма обработки данных является отдельной ветвью вычислений. Направление ветвления выбирается логической проверкой, в результате которой возможны два ответа:

1.«да» — условие выполнено.

2.«нет» — условие не выполнено.

Циклические алгоритмы содержат цикл – это многократно повторяемый участок алгоритма.Различают циклы с предусловием и постусловием.Также циклы бывают детерминированные и итерационные.Цикл называется детерминированным, если число повторений тела цикла заранее известно или определено. Цикл называется итерационным, если число повторений тела цикла заранее неизвестно, а зависит от значений параметров (некоторых переменных), участвующих в вычислениях.

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