![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
CrAzY_GeNiYS |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Продвинутые Сообщений: 5 Регистрация: 22.9.2008 Город: Украина, Краматорск Учебное заведение: ДГМА Вы: студент ![]() |
В приложении я добавил само задание... Текст программы выложу чуть ниже, а сейчас объясню суть проблемы...
Не смотрите что я не сделал для 3 части (IMG:style_emoticons/default/smile.gif), уменя проблема с 1 и 2 частью (IMG:style_emoticons/default/sad.gif)... Не могу понять почему у меня не хочет выполняться первый цмкл, с тем же While... это я проверял так, вывел какуюто надпись перед и после цикла и получилось так, что 1-й цикл не хотит выполняться... вродебы всё удовлетворяет, но почему, я не понимаю (IMG:style_emoticons/default/unsure.gif) ... Помогите пожалуйста... П.с.Правда хоть это и первый курс, но я решил выпендриться и решить не так как в условии... дело в том, что мы массивы не изучали... мы изучили только эти цыклы, но ещё и if then else... Вобщем это не важно... найдите ошибку если сможите... Вот сама программа: program lab5_var13; uses crt; const xn=0.4; xk=2.8; hx=0.4; a=1.7; var x,y:real; v,i:integer; tab:array[1..7,1..2] of real; begin clrscr; writeln('vubirite sposob reshenija i postavte cifry:'); writeln('1) WHILE'); writeln('2) REPEAT'); writeln('3) FOR'); write('Variant => '); read(v); if v=1 then begin x:=xn; i:=1; writeln('nachali...'); while x<=a do begin y:=cos((x)/(25)); tab[i,1]:=x; tab[i,2]:=y; x:=x+hx; i:=i+1; end; writeln('prodolguli...'); while (x<=xk+hx)and(x>a) do begin y:=sqrt(exp(3*ln(x))+4); tab[i,1]:=x; tab[i,2]:=y; x:=x+hx; i:=i+1; end; for i:=1 to 7 do writeln('Pri X=', tab[i,1]:10:7, ' => Y=', tab[i,2]:10:7); end; if v=2 then begin x:=xn; i:=1; writeln('nachali...'); repeat y:=cos((x)/(25)); tab[i,1]:=x; tab[i,2]:=y; x:=x+hx; i:=i+1; until (x<=xk)and(x<a); writeln('kapec...'); repeat y:=sqrt(exp(3*ln(x))+4); tab[i,1]:=x; tab[i,2]:=y; x:=x+hx; i:=i+1; until (x<=xk)and(x>a); for i:=1 to 7 do writeln('Pri X=', tab[i,1]:10:7, ' => Y=', tab[i,2]:10:7); end; if v=3 then begin end; readkey end. Прикрепленные файлы ![]() |
![]() ![]() |
граф Монте-Кристо |
![]()
Сообщение
#2
|
Доцент ![]() ![]() ![]() ![]() ![]() ![]() Группа: Преподаватели Сообщений: 3 840 Регистрация: 27.9.2007 Из: Старый Оскол Город: Москва Учебное заведение: МФТИ/МАИ Вы: другое ![]() |
В цикле while всё вроде бы работает нормально,а вот repeat у Вас неправильно написан.Посмотрите,что должно означать условие после until.
Вывод результатов лучше всего писать в самом конце программы - один раз вместо трёх. К тому же Ваша программа слишком привязана к задаче,стоит немного изменить входные данные - и придётся почти заново её писать.Старайтесь делать её универсальнее. |
CrAzY_GeNiYS |
![]()
Сообщение
#3
|
Новичок ![]() Группа: Продвинутые Сообщений: 5 Регистрация: 22.9.2008 Город: Украина, Краматорск Учебное заведение: ДГМА Вы: студент ![]() |
В цикле while всё вроде бы работает нормально,а вот repeat у Вас неправильно написан.Посмотрите,что должно означать условие после until. Вывод результатов лучше всего писать в самом конце программы - один раз вместо трёх. К тому же Ваша программа слишком привязана к задаче,стоит немного изменить входные данные - и придётся почти заново её писать.Старайтесь делать её универсальнее. Да пофиг на тот Репит... я его буду делать по образу и подобию Вайл (IMG:style_emoticons/default/smile.gif)... Я просто не пойму какого **** первый цикл Вайла не хочет работать?!... мож я и правда намудрил с i, но вроде оно должно в любом случае, но оно какого-то вобще не хочет делать первый цикл (IMG:style_emoticons/default/sad.gif)... Ну три раза вместо одного вывод я сделал просто чтобы показать, что каждая часть проги работает отдельно, тоесть это не важно (IMG:style_emoticons/default/wink.gif)... Цитата стоит немного изменить входные данные - и придётся почти заново её писать либо вы не так поняли либо я (IMG:style_emoticons/default/wink.gif)... там даны определённые числа... я их в константы определил, чтобы не парить себе мозг (IMG:style_emoticons/default/smile.gif)... а если вам переписать прогу нада, введите другое значение в константах соответствующему значению... да и собственно я это знаю, просто это не есть программа такая уж нужная, чтобы её делать универсальней (IMG:style_emoticons/default/wink.gif), согласитесь со мной, что она предназначена один раз сделать и здать... её легче заново написать если понадобиться, чем редактировать это (IMG:style_emoticons/default/smile.gif)... Цитата Сорри, не заметил i глобальная перем. вроде должно работать Вот и я о том же... я полностью продумал логику... по идее оно должно в любом случае работать (IMG:style_emoticons/default/wink.gif)... но увы (IMG:style_emoticons/default/sad.gif)... Может кто ещё что скажет?... я то могу нормально переделать и сделать так как нужно... Но мне аж интересно стало, какого **** оно не работает (IMG:style_emoticons/default/smile.gif) |
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 25.5.2025, 18:48 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru