Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 01.05.2016
Сообщений: 142

Равноускоренное движение

01.10.2016, 18:58. Показов 3068. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите разработать программу "равноускоренное движение" с полным разъяснением ее работы
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.10.2016, 18:58
Ответы с готовыми решениями:

Равноускоренное движение
Тело, которому была сообщена некоторая начальная скорость, движется равноускоренно. За третью секунду своего движения оно прошло 10 м, а за...

равноускоренное движение
1.Частица движется вдоль оси х и скорость равна v=8/x при t=0 x=0.Найти зависимость скорости и ускорения от времени, вычислить их при t=4c.

Равноускоренное движение
Интересует вот такой вопрос - есть два тела которые движутся с разной скоростью, причем эти тела находятся на некотором расстоянии....

20
Эксперт Pascal/Delphi
2388 / 1300 / 1492
Регистрация: 29.08.2014
Сообщений: 4,665
02.10.2016, 06:53
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

шарик скатывается с по наклонному желобу под углом. Вводите угол и смотрите результат. С масштабом косяк. Исправьте плиз.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
uses GraphAbc;
const n=10;//количество засечек по времени
      d=20;
      m=1+250 div n;
var
  alpha,v,a:real;
  l,x,y:array[1..n] of real;
  t,h,k,w:integer;
begin
  SetWindowHeight(480);
  SetWindowWidth(640);
  w:=TextWidth('W')*20; //отступ рисунка от текста
  write('Введите угол наклона(градусы):');
  readln(alpha);
  alpha:=pi*alpha/180;//перевод градусов в радианы
  writeln;
  a:=7*sin(alpha)/2;//линейное ускорение шара вообще a=5/7*g*sin(alpha), но 5*9.8/7=7 
  writeln('линейное ускорение =',a:0:2,' м/c^2');
  writeln('t(с)':4,' : ','S(м)':5,' : ','V(м/с)':5);
  for t:=1 to n do begin //5 засечек по времени печатаем таблицу
    l[t]:=a*t*t/14;//пройденный путь за время t
    x[t]:=m*l[t]*cos(alpha);
    y[t]:=m*l[t]*sin(alpha);
    circle(w+round(x[t]),d+round(y[t]),5);
    v:=2*a*l[t];//скорость на каждом участке
    writeln(t:4,' : ',l[t]:5:2,' : ',v:5:2);
  end;
  k:=(WindowWidth-w-d) div n; 
  k:=round(m*l[n]*cos(alpha));  
  h:=round(m*l[n]*sin(alpha)); 
  Line(w,d,w,d+h);
  Line(w,d+h,w+k,d+h);TextOut(w,TextHeight('W')+h+d,'0');
  Line(w,d,w+k,d+h);TextOut(w+k,TextHeight('W')+h+d,n);
  TextOut(w+ k div 2,TextHeight('W')+h+d,'t');
  for t:=1 to n do line(w+round(x[t]),d+round(y[t]),w+round(x[t]),d+h);
end.
0
0 / 0 / 0
Регистрация: 01.05.2016
Сообщений: 142
02.10.2016, 16:51  [ТС]
А можете, пожалуйста, побольше объяснить, за что каждая строчка отвечает?
0
Эксперт Pascal/Delphi
2388 / 1300 / 1492
Регистрация: 29.08.2014
Сообщений: 4,665
03.10.2016, 02:25
Встроенный help читали?
0
0 / 0 / 0
Регистрация: 01.05.2016
Сообщений: 142
04.10.2016, 07:29  [ТС]
нет, подскажите где его найти? мне очень подходит ваша программа, но мне нужно ее объяснить, чего я сделать не смогу
0
Эксперт Pascal/Delphi
2388 / 1300 / 1492
Регистрация: 29.08.2014
Сообщений: 4,665
04.10.2016, 10:25
в PascalABC.Net встаете курсором на команду и жмете F1
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
uses GraphAbc;
const n=10;//количество засечек по времени
      d=20;//отступ рисунка от верхнего края
      m=1+250 div n; //коэффициент масштабирования
var //объявление переменных
  alpha,v,a:real;
  l,x,y:array[0..n] of real;
  t,h,k,w:integer;
begin
  SetWindowHeight(480); // высота графического окна 480 точек
  SetWindowWidth(640);  // ширина - 640
  w:=TextWidth('W')*20; //отступ рисунка от текста
  write('Введите угол наклона(градусы):');readln(alpha);writeln(alpha);//   ввод значения и вывод его в графическое окно
  alpha:=pi*alpha/180;//перевод градусов в радианы
  a:=7*sin(alpha)/2;//линейное ускорение шара вообще a=5/7*g*sin(alpha), но 5*9.8/7=7 
  writeln('линейное ускорение =',a:0:2,' м/c^2'); 
  writeln('t(с)':4,' : ','S(м)':5,' : ','V(м/с)':5);
  for t:=0 to n do begin //n засечек по времени печатаем таблицу
    l[t]:=a*t*t/14;//пройденный путь за время t
    x[t]:=m*l[t]*cos(alpha);//положение шара в момент t по координате x
    y[t]:=m*l[t]*sin(alpha);// по координате y
    v:=2*a*l[t];//скорость на каждом участке
    writeln(t:4,' : ',l[t]:5:2,' : ',v:5:2); // печатаем результат - время, путь, скорость
  end;
  k:=round(m*l[n]*cos(alpha)); //длина, (l[n]-гипотенуза - пройденный путь от момента начала движения (t=0), до конца замера (момент сремени t=n)  
  h:=round(m*l[n]*sin(alpha)); //высота треугольника 
  SetPenColor(clgreen); // цвет пера зеленый
  Line(w,d,w,d+h);Line(w,d+h,w+k,d+h);Line(w,d,w+k,d+h);//рисуем треугольник  
  TextOut(w,TextHeight('W')+h+d,'0');TextOut(w+k,TextHeight('W')+h+d,n); //подписываем под осью момент времени
  TextOut(w+ k div 2,TextHeight('W')+h+d,'t'); //это само название оси
  for t:=0 to n do begin //рисуем шар в каждый момент времени
    SetPenColor(clBlue);//синий шар
    circle(w+round(x[t])+3,d+round(y[t])-5,5); // рисуем круг в точке x,y радиусом 5 пикселей
    Setpencolor(clRed); //цвет пера красный  
    line(w+round(x[t]),d+round(y[t]),w+round(x[t]),d+h); //опускаем засечки по времени на временную ось
    //подписываем моменты времени
    SetFontSize(8);//высота текста 8
    SetFontColor(clMagenta); // цвет - фиолетовый
    TextOut(w+round(x[t]),d+h+1,t);
  end;  
end.
Добавлено через 45 секунд
Цитата Сообщение от Анисина Дарья Посмотреть сообщение
но мне нужно ее объяснить, чего я сделать не смогу
Вы думаете преподаватели CyberForum не читают?

Добавлено через 1 час 14 минут
так более наглядно:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
uses GraphAbc;
const d=20;//отступ рисунка от верхнего края
  
var //объявление переменных
  alpha,v,a,l:real;
  x,y:array of real;
  t,h,k,w,i,m,n:integer;
begin
  Window.Maximize;
  repeat   
    Window.Clear;
    SetFontSize(10);
    SetFontColor(clBlack);
    w:=TextWidth('W'); //отступ рисунка от текста
    TextOut(1,w,'Введите угол наклона(градусы):');readln(alpha);
    TextOut(1,2*w,'Введите временя спуска(секунды)(0-выход):');readln(n);      
    if n>0 then begin
      SetFontSize(8);
      Window.Clear;
      TextOut(1,w,'Угол наклона:'+FloatToStr(alpha)+' град.');
      TextOut(1,2*w,'Время спуска:'+IntToStr(n)+' c');      
   SetLength(x,n+1);SetLength(y,n+1);//установка размеров массивов
   m:=1+250 div n; //коэффициент масштабирования
  alpha:=pi*alpha/180;//перевод градусов в радианы
  a:=7*sin(alpha)/2;//линейное ускорение шара вообще a=5/7*g*sin(alpha), но 5*9.8/7=7 
  TextOut(1,3*w,format('линейное ускорение ={0:N2} м/с^2',a)); 
  TextOut(1,4*w,format('{0,10}{1,10}{2,10}','t(с)','S(м)','V(м/с)'));
  for t:=0 to n do begin //5 засечек по времени печатаем таблицу
    l:=a*t*t/14;//пройденный путь за время t
    x[t]:=m*l*cos(alpha);//положение шара в момент t по координате x
    y[t]:=m*l*sin(alpha);// по координате y
    v:=2*a*l;//скорость на каждом участке
    TextOut(1,(t+5)*w,format('{0,10:N2}{1,10:N2}{2,10:N2}',t,l,v)); // печатаем результат - время, путь, скорость
  end;
  w:=w*20;
  k:=round(m*l*cos(alpha)); //длина, (l[n]-гипотенуза - пройденный путь от момента начала движения (t=0), до конца замера (момент сремени t=n)  
  h:=round(m*l*sin(alpha)); //высота треугольника 
  SetPenColor(clgreen); // цвет пера зеленый
  Line(w,d,w,d+h);Line(w,d+h,w+k,d+h);Line(w,d,w+k,d+h);//рисуем треугольник  
  TextOut(w,TextHeight('W')+h+d,'0');TextOut(w+k,TextHeight('W')+h+d,n); //подписываем под осью момент времени
  TextOut(w+ k div 2,TextHeight('W')+h+d,'t'); //это само название оси
  for t:=0 to n do begin //рисуем шар в каждый момент времени
    if t>0 then for i:=1 to 10 do begin
      SetPenColor(clBlue);
      circle(w+round(x[t-1])+3,d+round(y[t-1])-5,5); // рисуем круг в точке x,y радиусом 5 пикселей
      SetPenColor(clBrown);      
      circle(w+round(x[t-1]+i*abs(x[t]-x[t-1])/10)+3,d+round(y[t-1]+i*abs(y[t]-y[t-1])/10-5),4);
      Sleep(100);
      SetPenColor(clWhite);
      circle(w+round(x[t-1]+i*abs(x[t]-x[t-1])/10)+3,d+round(y[t-1]+i*abs(y[t]-y[t-1])/10-5),5);      
    end;
    SetPenColor(clBlue);
    circle(w+round(x[t])+3,d+round(y[t])-5,5); // рисуем круг в точке x,y радиусом 5 пикселей
    Setpencolor(clRed); //цвет пера красный  
    line(w+round(x[t]),d+round(y[t]),w+round(x[t]),d+h); //опускаем засечки по времени на временную ось
    //подписываем моменты времени
    SetFontSize(8);//высота текста 8
    SetFontColor(clMagenta); // цвет - фиолетовый
    TextOut(w+round(x[t]),d+h+1,t);
  end;  
  TextOut(1,WindowHeight-50,'Нажмите <Enter> для продолжения...');
  readln;
  end;
  until n=0;
  Window.Close;
end.
0
0 / 0 / 0
Регистрация: 01.05.2016
Сообщений: 142
04.10.2016, 16:27  [ТС]
Конечно читают СПАСИБО БОЛЬШОЕ ЗА ПОМОЩЬ
0
0 / 0 / 0
Регистрация: 01.05.2016
Сообщений: 142
15.10.2016, 10:10  [ТС]
А вы могли бы сделать так чтобы в 40 строке и в 59 строке, там где есть TextOut, переменная n преобразовалась в строку. Мне сказали что это можно сделать через str и val, но у меня не получается? А программа не работает на другом компьтере
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
15.10.2016, 10:16
Не нужно str и val.
Pascal
1
2
TextOut(w+k,TextHeight('W')+h+d,inttostr(n));
TextOut(w+round(x[t]),d+h+1,inttostr(t));
0
0 / 0 / 0
Регистрация: 01.05.2016
Сообщений: 142
15.10.2016, 10:20  [ТС]
спасибо)
0
0 / 0 / 0
Регистрация: 01.05.2016
Сообщений: 142
18.10.2016, 16:28  [ТС]
Joy, ваша программа (последняя с Window Close) отличная и мне нужна снова ваша помощь. опишите пожалуйста каждую строчку этой программы, все переменные, что за что отвечает. в общем нужна доскональная подробность. пожалуйста
0
Эксперт Pascal/Delphi
2388 / 1300 / 1492
Регистрация: 29.08.2014
Сообщений: 4,665
18.10.2016, 16:34
так они и так подписаны. или физику процесса вплоть до выведения формул написать?
0
0 / 0 / 0
Регистрация: 01.05.2016
Сообщений: 142
19.10.2016, 18:52  [ТС]
Joy, я была бы примного вам благодарна. и подскажите пожалуйста за что каждая переменная отвечает, ну кроме конечно s,v,t
0
Эксперт Pascal/Delphi
2388 / 1300 / 1492
Регистрация: 29.08.2014
Сообщений: 4,665
20.10.2016, 02:31
Анисина Дарья, вы код читали? Переменной s там нет. Прочтите код, и задавайте вопросы что не понятно. Переменные почти все по тексту расписаны.
0
0 / 0 / 0
Регистрация: 01.05.2016
Сообщений: 142
22.10.2016, 21:09  [ТС]
Joy, подскажите,пожалуйста, тогда за что отвечает каждая переменная v,a,l,x,y,t,h,k,w,i,m,n
0
Эксперт Pascal/Delphi
2388 / 1300 / 1492
Регистрация: 29.08.2014
Сообщений: 4,665
24.10.2016, 05:47
Цитата Сообщение от Анисина Дарья Посмотреть сообщение
Joy, подскажите,пожалуйста, тогда за что отвечает каждая переменная v,a,l,x,y,t,h,k,w,i,m,n
господин Халявщик! Когда учиться начнем?
писал же выше, что все расписано в коде.
к примеру переменная "v", строка кода
Цитата Сообщение от Joy Посмотреть сообщение
v:=2*a*l;//скорость на каждом участке
русским по белому же написано, после двух обозначений деления - "//"(так комментарии обозначаются в этом паскале), что это скорость!
слева от оператора присвоения ":=" стоит переменная(в данном случае "v") которой присваивается значение справа, в данном случае 2*a*l. С остальными переменными сами разбирайтесь. В комментариях все написано.
0
0 / 0 / 0
Регистрация: 01.05.2016
Сообщений: 142
25.10.2016, 15:20  [ТС]
Joy, хорошо. спасибо большое за помощь)
0
0 / 0 / 0
Регистрация: 01.05.2016
Сообщений: 142
02.01.2017, 21:31  [ТС]
Joy, подскажите пожалуйста, как лучше разбить программу на блоки? на что в первую очередь стоит обратить внимание?
0
Эксперт Pascal/Delphi
2388 / 1300 / 1492
Регистрация: 29.08.2014
Сообщений: 4,665
04.01.2017, 03:31
Анисина Дарья, что в вашем понимании есть блок?
0
0 / 0 / 0
Регистрация: 01.05.2016
Сообщений: 142
15.01.2017, 18:32  [ТС]
Joy, объявление переменных например, или рисование какого то предмета в подпрограмме. описание какого-то конкретного алгоритма, главного в задаче
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.01.2017, 18:32
Помогаю со студенческими работами здесь

Равноускоренное прямолинейное движение
как решить эту задачу, должно решаться просто) ускорение шайбы, соскальзывающей с гладкой наклонной поверхности, равно 1.2 м/сек^2....

Равноускоренное движение объекта
Есть объект (прямоугольник), двигается с помощью стрелочек. Нужно сделать, чтобы движение было равноускоренным, ну и естественно, когда...

Равноускоренное реактивное движение
http://oilforum.kz/wp-content/uploads/2013/04/12.04.jpg Придумал задачу к дню космонавтики, рекомендую порешать. Ракета весит 10 тонн,...

Равноускоренное движение прямоугольника
Как сделать равноускоренное движение объекта? Пробовал введенное пользователем ускорение использовать как значение для SDL_Delay и...

Равноускоренное движение по окружности
Автомашина разгоняется с известным постоянным тангенциальным ускорение Ат по окружности радиусом R. Какой путь пройдет машина к моменту,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru