спартак37
01.08.2022 17:55

Nлабораторных работ. для их выполнения студентов в группе разбили на n команд. за практикум каждая из команд должна выполнить все предусмотренные работы. каждая команда при выполнении каждой работы заполняет отдельный протокол выполнения. по окончанию практикума преподаватель собрал 36 протоколов. сколько работ вынесено на практикум

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
dasha2468135
24.12.2021 04:46
Основа взята на сайте 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 оценок)
Ответ:
VadAltman13
16.11.2022 19:50
Решение №1 (без массивов)

var a,n,i,j,s:integer;
begin
  writeln('Введите количество цифр в числе');
  readln(n);
  for i:=1 to n do begin
    writeln('Введите ',i,' цифру из ',n);
    readln(a);
    for j:=1 to n-i do a:=a*10;
    s:=s+a;
  end;
  writeln('Натуральное число: ',s);
end.

Тестовое решение

Введите количество цифр в числе
5
Введите 1 цифру из 5
9
Введите 2 цифру из 5
2
Введите 3 цифру из 5
7
Введите 4 цифру из 5
3
Введите 5 цифру из 5
1
Натуральное число: 92731

Решение №2 Если очень надо использовать массив (хотя на мой взгляд совсем не нужно)

//PascalABC.NET (версия 3.1, сборка 1198)
var a,n,i,j,s:integer;
mas:array[1..10]of integer;
begin
  writeln('Введите количество цифр в числе');
  readln(n);
  for i:=1 to n do begin
    writeln('Введите ',i,' цифру из ',n);
    readln(mas[i]);
    a:=mas[i];  
    for j:=1 to n-i do a:=a*10;
    s:=s+a;
  end;
  writeln('Натуральное число: ',s);
end.

Тестовое решение

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