Публикации
Мое увлечение
Всероссийский сборник статей и публикаций института развития образования, повышения квалификации и переподготовки.
Скачать публикацию
Язык издания: русский
Периодичность: ежедневно
Вид издания: сборник
Версия издания: электронное сетевое
Публикация: Мое увлечение
Автор: Манишин Савелий
Периодичность: ежедневно
Вид издания: сборник
Версия издания: электронное сетевое
Публикация: Мое увлечение
Автор: Манишин Савелий
Задача 06.01 Текст задачи Напишите программу, которая рисует график функции y = sin x. В программе должна быть предусмотрена возможность масштабирования графика, на котором изображен один период функции.СкриншотТекст программыprogram project1;{$mode objfpc}{$H+}uses {$IFDEF UNIX}{$IFDEF UseCThreads} cthreads, {$ENDIF}{$ENDIF} Classes, Graph, Crt { you can add units after this };var p, x1, x2, y1, y2: Real; xMax, yMax, i: Integer; s: ShortString;procedure OpenGraph;var Gd, Gm: SmallInt; Err: Integer;begin Gd := Detect; InitGraph(Gd, Gm, ''); Err := GraphResult; if Err <> GrOk then begin WriteLn('Графика не работает!'); Halt(1); end;end;begin OpenGraph; xMax := 300; yMax := 300; SetColor(15); SetLineStyle(SolidLn, 0, NormWidth); Line(0, yMax - yMax div 2, xMax, yMax - yMax div 2); Line(xMax - xMax div 2 - 5, yMax - 3 * (yMax div 4), xMax - xMax div 2 + 5, yMax - 3 * (yMax div 4)); OutTextXY(xMax - xMax div 2 - 35, yMax - 3 * (yMax div 4) - 3, '0,5'); Line(xMax - xMax div 2 - 5, yMax - yMax div 4, xMax - xMax div 2 + 5, yMax - yMax div 4); OutTextXY(xMax - xMax div 2 + 15, yMax - yMax div 4 - 3, '-0,5'); Line(xMax - xMax div 2, 0, xMax - xMax div 2, yMax); p := Pi / (yMax div 2); for i := 1 to 3 do begin Line(xMax - xMax div 2 - Round(i / p), yMax - yMax div 2 - 5, xMax - xMax div 2 - Round(i / p), yMax - yMax div 2 + 5); Str(-i, s); OutTextXY(xMax - xMax div 2 - Round(i / p), yMax - yMax div 2 + 10, s); Line(xMax - xMax div 2 + Round(i / p), yMax - yMax div 2 - 5, xMax - xMax div 2 + Round(i / p), yMax - yMax div 2 + 5); Str(i, s); OutTextXY(xMax - xMax div 2 + Round(i / p), yMax - yMax div 2 + 10, s); end; x1 := 0; SetColor(10); SetLineStyle(SolidLn, 0, ThickWidth); MoveTo(0, yMax - yMax div 2); while x1 <= xMax do begin y1 := (yMax div 2) * sin(x1 * p); x2 := x1 + p; y2 := (yMax div 2) * sin(x2 * p); Line(Round(x1), yMax - yMax div 2 + Round(y1), Round(x2), yMax - yMax div 2 + Round(y2)); x1 := x2; y1 := y2; end; ReadKey; CloseGraph;end.Текст задачи Напишите программу, которая по выбору пользователя рисует либо график y = sin x, либо график y = cos x.СкриншотТекст программыunit Unit1;{$mode objfpc}{$H+}interfaceuses Classes, SysUtils, FileUtil, TAGraph, TASeries, Forms, Controls, Graphics, Dialogs, ExtCtrls;type { TForm1 } TForm1 = class(TForm) Chart1: TChart; Chart1LineSeries1: TLineSeries; RadioGroup1: TRadioGroup; Timer1: TTimer; procedure RadioGroup1Click(Sender: TObject); procedure DrawGraph; procedure Timer1Timer(Sender: TObject); private { private declarations } public { public declarations } end;var Form1: TForm1;implementation{$R *.lfm}{ TForm1 }procedure TForm1.DrawGraph;var i: Real;begin Form1.Chart1LineSeries1.Clear; i := - 10; while i < 10 do begin i := i + 0.01; if RadioGroup1.ItemIndex = 0 then Chart1LineSeries1.AddXY(i, Sin(i)) else Chart1LineSeries1.AddXY(i, Cos(i)); end;end;procedure TForm1.Timer1Timer(Sender: TObject);begin DrawGraph; Timer1.Enabled := False;end;procedure TForm1.RadioGroup1Click(Sender: TObject);begin DrawGraph;end;end.Текст задачи Напишите программу, которая выдает символ, соответствующий коду ASCII, который вводит пользователь. Коды могут изменяться от 33 до 126.СкриншотТекст программыunit Unit1;{$mode objfpc}{$H+}interfaceuses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls, Spin;type { TForm1 } TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; SpinEdit1: TSpinEdit; StaticText1: TStaticText; procedure SpinEdit1Change(Sender: TObject); private { private declarations } public { public declarations } end;var Form1: TForm1;implementation{$R *.lfm}{ TForm1 }procedure TForm1.SpinEdit1Change(Sender: TObject);begin StaticText1.Caption := Chr(SpinEdit1.Value);end;end.