![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Танюшонка |
![]()
Сообщение
#1
|
Гость ![]() |
Здравствуйте! мне очень нужна ваша компетентная помощь!
Мне над написать программку, которая может решать простые уравнения типа 5Х+10, которые бы вводил пользователь. Как бы мне это сделать? Пользователь вводит уравнение. Через readln я получаю стринг. Как мне его теперь разделить на отдельные символы, чтобы проверить это цифра или буква. Мне в понедельник её сдавать, помогите мне, очень прошу! Буду примного благодарна! Сообщение отредактировано: Танюшонка - 15.06.2007 15:19 |
![]() ![]() |
Танюшонка |
![]()
Сообщение
#2
|
Гость ![]() |
Сделала вот так. Не обращайте внимание, что переменные по немецки. Что вы об этом думаете?
Код program funktionsgraf; uses crt; var str, symbol1, symbol2,wertstr1, wertstr2 :string; position, wert, wert1, wert2, fehler, x, y :integer; zeichen : char; BEGIN TextColor(Black); clrscr; writeln('Geben sie die Funtion f(x) ein'); readln(str); position:=0; wertstr1 := ''; wertstr2 := ''; wert := 0; repeat begin wert1 := wert; position:=position+1; symbol1:=copy(str,position,1); wertstr1:=wertstr1+symbol1; val(wertstr1,wert, fehler); end; until fehler<>0; writeln(wert1); {WEG} position:=position+1; zeichen:=str[position]; wert := 0; repeat begin position:=position+1; symbol2:=copy(str,position,1); wertstr2:=wertstr2+symbol2; val(wertstr2,wert,fehler); wert2 := wert; end; until ((fehler<>0) or (position = length(str))); writeln(wert2); {WEG} writeln(' x f(x)'); for x:=1 to 10 do begin case zeichen of '+' : begin y:=wert1*x+wert2; {writeln(' ',x,' ',y)} Punkt(x,wert1*x+wert2); end; '-' : begin y:=wert1*x-wert2; {writeln(' ',x,' ',y)} Punkt(x,wert1*x+wert2); end else writeln('Fehler!'); end; { case } end; { for } readkey; END. |
![]() ![]() |
![]() |
Текстовая версия | 19.07.2025 3:58 |