IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Программа ввода
сообщение
Сообщение #1


Гость






Здравствуйте! мне очень нужна ваша компетентная помощь!
Мне над написать программку, которая может решать простые уравнения типа 5Х+10, которые бы вводил пользователь. Как бы мне это сделать?
Пользователь вводит уравнение. Через readln я получаю стринг. Как мне его теперь разделить на отдельные символы, чтобы проверить это цифра или буква.
Мне в понедельник её сдавать, помогите мне, очень прошу! Буду примного благодарна!

Сообщение отредактировано: Танюшонка -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Цитата
написать программку, которая может решать простые уравнения типа 5Х+10, которые бы вводил пользователь
Ты видишь здесь уравнение? Я - нет... Уравнение - это что-то со знаком равенства...

Определи, кстати, насколько простым может быть уравнение, и какие арифметические операции надо будет уметь обрабатывать...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Ну скажем функция а не уравнение. Потом я за Х вставлю значения. Должно быть простое с одной переменной. типа 2Х+3 или 4Х-7.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






То есть, ты хочешь нечто вроде этого:
function eval(X: real; s: string): real;
var
p, err: integer;
st: string;
f: real;
begin
p := pos('X', s);
delete(s, p, 1);
str(X:0:3, st);
insert(st, s, p);
val(calc(s), f, err);
eval := f;
end;


begin
{ В строке обязательно вводить знак умножения, и буква X должна быть большой... }
write('f(x) = '); readln(s); { Тестировалось на строке 10*X+30 }
writeln(eval(12.45, s) :10 :5);
end.

(функция Calc приведена вот тут:
Интерпретатор ) ?

Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Сделала вот так. Не обращайте внимание, что переменные по немецки. Что вы об этом думаете?


Код
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.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


dry.gif а перевести никак нельзя?
лично я не могу общаться с программой, не понимая, что она мне говорит...
а форум у нас вроде как русскоязычный. вот тебе приятно было бы, если бы я написала ответ, скажем, на китайском? и в конце - извини, что на китайском... не обращай внимания.


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






Извините, я сейчас перквкеду. Ещё вопрос, как в TP вводить степень? Просто 2^2 не работает, посмотрела в инете, а там что-то ничего простого нету. Не ужто TP не умеет просто степени считать.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Цитата
Ещё вопрос, как в TP вводить степень?
Вот так:
Общие вопросы по математике.
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 15:08
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name