Сама задача звучит так
Искал поиском, нашел такую же задачу, но тема закрыта и задача не решена.
Если надо то могу выложить свое решение через while, но думаю оно мало поможет.
Заранее благодарен.
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Задача с циклом FOR |
mr.voland |
Сообщение
#1
|
Группа: Пользователи Сообщений: 4 Пол: Мужской Репутация: 0 |
Не могу не как решить задачу через while сделал, а надо через for.
Сама задача звучит так Код Около стены наклонно стоит палка длинной x метров. Один ее конец находится на растоянии y метров от стены. Определить значения угла между палкой и полом для значений y, изменяющегося от 2 до 3 метров с шагом h. Искал поиском, нашел такую же задачу, но тема закрыта и задача не решена. Если надо то могу выложить свое решение через while, но думаю оно мало поможет. Заранее благодарен. |
Client |
Сообщение
#2
|
Профи Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: 20 |
покажи как с WHILE'ом сделал, там подправим.
Сообщение отредактировано: Client - |
mr.voland |
Сообщение
#3
|
Группа: Пользователи Сообщений: 4 Пол: Мужской Репутация: 0 |
Код program lab6_v4; uses CRT; var x,h:real; a,y:real; arccos:real; Begin CLRSCR; write ('Введите длину палки '); read(x); write ('Введите шаг'); read(h); y:=2; while y<=3 do begin arccos:=arctan(sqrt(1-sqr(y/x))/(y/x)); writeln('Значение угла',arccos:8:2,' при y=',y); y:=y+h; end; repeat Until KeyPressed; end. p.s. Есть мысль что через for надо делать по формуле n:=(3-2)/h+1 h-Это шаг и тогда получается что for i:=1 to n do А вот какого типа должны быть переменные? Сообщение отредактировано: mr.voland - |
Client |
Сообщение
#4
|
Профи Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: 20 |
если шаг больше 0.1, то можно так:
for i:=20 to 30 do bein |
andriano |
Сообщение
#5
|
Гуру Группа: Пользователи Сообщений: 1 168 Пол: Мужской Реальное имя: Сергей Андрианов Репутация: 28 |
Client, что-то мне кажется, y := i*h;
|
Client |
Сообщение
#6
|
Профи Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: 20 |
uses crt; Для сравнения привел 2 цикла Сообщение отредактировано: Client - |
volvo |
Сообщение
#7
|
Гость |
Цитата если шаг больше 0.1 А если 0.09 - тогда что?Неужели нельзя сделать общий случай? const? |
Текстовая версия | 23.12.2024 20:47 |