Program 1 var x: integer; a,b,c,d,e,f: real; begin write('x='); read(x); a:=...... b:=...... c:=...... d:=...... begin if x<740 then e:=...... if x>=740 then e:=..... end; f:=.... writeln ('a=',.....) writeln ('b=',.....) writeln ('c=',.....) writeln ('d=',.....) writeln ('e=',.....) writeln ('e=',.....) writeln ('f=',.....) end.
При вводе значения х надо вывести вычисления a,b,c,d,e,f но не получаеться с значением e подскажите как зделать!
Человек_Без_Имени
22.03.2007 2:21
если правильно понял, то в зависимости от х е будет вычислятся по разным формулам? тогда лучше используй конструкцию if x<740 then e:=f(x) else e:=g(x);
Sozialist
22.03.2007 2:31
А чего не получается? Расставь везде ";", внутренние begin end не нужны. Ну и перед завершающим END, как я понимаю, надо readln добавить.
to человек без имени ты правильно понял только как это в этой програме записать?
Человек_Без_Имени
22.03.2007 2:39
примерно так
Program 1 var x: integer; a,b,c,d,e,f: real; begin write('x='); read(x); a:=......; b:=......; c:=......; d:=......; if x<740 then e:=...... else e:=.....; f:=....; writeln ('a=',.....); writeln ('b=',.....); writeln ('c=',.....); writeln ('d=',.....); writeln ('e=',.....); writeln ('e=',.....); writeln ('f=',.....); readln; end.
заметь, что перед else точка с запятой не нужна
Sozialist
22.03.2007 2:46
To Адель Посты набиваем?
Dorash87
22.03.2007 2:48
спасибо но програма все равно считает е по первой формуле даже когда значение х больше 740 в чем ошибка?
Sozialist
22.03.2007 2:51
Цитата(Dorash87 @ 21.03.2007 22:48)
спасибо но програма все равно считает е по первой формуле даже когда значение х больше 740 в чем ошибка?
Ошибок нет, давай полное условие, напишем за 5 мин, если есть желание
Гость
22.03.2007 2:53
Sozialist, почувстовоал себя модератором? (я про пост №7)? Напрасно...
Dorash87
22.03.2007 2:55
там нет условия мне просто надо что бы програма вычисляла все эти значения но почемуто не могу зделать чтобы е вычислялось по второй формуле когда параметр х выше 740 в этом и вся проблема
Sozialist
22.03.2007 2:58
Т.е. ты пишешь, сама не зная чего, раз нет условия. Все верно.
Dorash87
22.03.2007 3:01
ну во первых я он а во вторых я знаю что пишу я не могу понять почему е не вычесляеться по другой формуле
Адель
22.03.2007 3:04
все же попробуй сдлатб, что я тебе написала...у меня все нормально работает. или же привиди полный код без "......."
Dorash87
22.03.2007 3:13
Адель ты же вроде написала все как у меня или я чигото не понял
Tan
22.03.2007 3:16
Дораш, приведи условие задачи, тогда тебя и тебе будет проще понять !
Человек_Без_Имени
22.03.2007 3:22
Цитата(Dorash87 @ 21.03.2007 22:48)
спасибо но програма все равно считает е по первой формуле
выложи этот код, в нем возможно есть другие ошибки, или дай условие(если конкретного нет-сочини сам).
Dorash87
22.03.2007 3:35
if x<740 then e:=(d-200)*0.0015 else e:=d*0.005;
Tan
22.03.2007 3:37
В этом отрывке всё верно, ты можешь свой код выложить полностью или дать условие ? а то вслепую не очень.
Dorash87
22.03.2007 4:47
Нашел в чем ошибка в строчке writeln('e=',.......) как правильно записать вывод информации?
Program 1 var x:integer; a,b,c,d,e,f:real; begin write('x='); readln (x); a:=(525*0.005)+(x-525)*0.02; b:=x*0.005; c:=x*0.01; d:=x-a-b-c; if x<740 then e:=(d-200)*0.0015 else e:=d*0.005; f:=d-e; writeln('a=',(525*0.005)+(x-525)*0.02); writeln('b=',(x*0.005); writeln('c=',(x*0.01); writeln('d=',(d:=x-a-b-c); writeln('e=',(d-200)*0.0015); writeln('f=',(d-e); end.
мисс_граффити
22.03.2007 5:07
ошибок тут много - и компилятор их радостно подчеркивает. ну, во-первых, такого имени у программы быть не может - да и точки с запятой в первой строке не хватает.
writeln('b=',(x*0.005); writeln('c=',(x*0.01);
посчитай скобочки в каждой из строк...
writeln('d=',(d:=x-a-b-c);
что за попытка присваивания? так нельзя.
и вообще, что за извращения с выводом? есть переменные, значения которых интересуют - их и выводи, а не считай заново:
writeln('d=',d);
Sozialist
22.03.2007 5:09
Кол-во скобок кратно 2. В выводе не присваивают, записывай просто выражение.
мисс_граффити
22.03.2007 5:11
Цитата
Кол-во скобок кратно 2.
с каких это пор 3 кратно 2?! в выделенных мной строках именно по 3 скобочки.
Dorash87
22.03.2007 5:21
мис граффити спасибо большое все работает (единственая ошибка была в выводах в книге какойто"умной" так было написано. а со всем остальным все у меня правильно)
Sozialist
22.03.2007 5:27
Цитата(мисс_граффити @ 22.03.2007 1:11)
с каких это пор 3 кратно 2?! в выделенных мной строках именно по 3 скобочки.
Это что, особенность турбо паскаля?
мисс_граффити
22.03.2007 5:29
Что именно? 3 не кратно 2 вне зависимости от компилятора, насколько мне известно. И даже четность количества скобок - не гарантия успешной компиляции.
Dorash87
22.03.2007 5:54
Теперь раскажите пожалуйста как зделать что бы этот код перенести в обычную програмку? или дайте ссылки на материал где про это можно почитать
мисс_граффити
22.03.2007 11:31
Что есть "обычная программка"? ехе-шник?
Человек_Без_Имени
22.03.2007 20:08
скопируй код в блокнот, сохрани, затем смени разрешение: txt на pas, затем открывай паскаль и запускай. или exe надо?
мисс_граффити
22.03.2007 20:35
Цитата
затем смени разрешение
расширение, может?
Человек_Без_Имени
22.03.2007 20:56
Цитата(мисс_граффити @ 22.03.2007 16:35)
расширение, может?
оговорился
Dorash87
23.03.2007 1:12
человек без имени да надо обычная ехе програмка
Tan
23.03.2007 1:25
скомпилируй свой готовый код в паскале, запусти (убедись что работает) и в папке с паскалем появится exe
Человек_Без_Имени
23.03.2007 1:29
в разделе Compile в Destination должно стоять Disk. далее жми F9 или Run->make. exe-шник появится в папке с паскалем. P.S. в Options->Directories строке EXE & TPU directory должна быть указана папка в которую помещать экзешник
Sorry, Tan, набирал и не видел твоего ответа...
Dorash87
23.03.2007 1:45
спасибо всем все работает. Теперь хотелось бы понять и научиться как для этого ехе-шника зделать оболочку (имееться ввиду интерфейс програмы) как такое создаеться и с помощью чиго?
Tan
23.03.2007 2:12
Ну ничего очень красивого не получится если делаешь на паскале, можно создать простенькое текстовое меню с оператором CASE OF . А если хочешь что - то поинтересней пиши в поиске меню, выриантов достаточно.
Dorash87
23.03.2007 3:33
я пока хочу попробовать простое что то типа 1.Ввод данных 2.вывод. как это можно зделать?
Алена
23.03.2007 3:38
Цитата
Ну ничего очень красивого не получится если делаешь на паскале
Ну, это как сказать... Если ты не умеешь складывать числа, то ты ни на счетах, ни на пальцах не посчитаешь... Точно так же и меню - если ТЫ не умеешь делать это красиво - не говори...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.