Помощь - Поиск - Пользователи - Календарь
Полная версия: не получается задача в праскале, подскажите в чем ошибка > Информатика / Программирование
Образовательный студенческий форум > Другие дисциплины > Информатика / Программирование
MARIZZA_B
в приклепленном файле задания

а вот что получилjсь:
program function;
users crt;
var x,a,y,k1,k2:real;
begin
clrscr;
x:=0.844;
a:=0.83756;
y:=a*(1-exp(-0.2));
if (0<x) and (x<2) then
k1:=y*arctan(1-sqr(x));
writeln ('k1=');
else
if x>=2 and x<=(-y) then
k2:=ln(abs(1-x/y);
writeln ('k2=');
else
writeln ('нет решения');
readln;
end.
Подскажите в чем ошибка?

заданиеНажмите для просмотра прикрепленного файла Нажмите для просмотра прикрепленного файла
Vahappaday
1. У меня FPC не дал скомпилить из-за того, что Вы программу назвали "fubction", a "function" - зарезервированное слово паскаля.
2. users -> uses
3. AND -> OR
4. Переменные нигде не выводились (сами глянете как надо в writeln)
Да и вообще у вас повсюду надо объединять блоками begin/end конструкции в операторах if

Код
program func;
uses crt;
var x,a,y,k1,k2:real;
begin
  clrscr;
  x:=0.844;
  a:=0.83756;
  y:=a*(1-exp(-0.2));
  if (0<x) and (x<2) then
    begin
        k1:=y*arctan(1-sqr(x));
        writeln ('k1=', k1);
    end
  else
    begin
      if (x>=2) OR (x<=(-y)) then
        begin
          k2:=ln(abs(1-x/y));
          writeln ('k2=',k2);
        end
      else
        begin
          writeln ('no solution');
        end
    end;
  readln();
end.


Код вообще-то принято отлаживать.
MARIZZA_B
Спасибо за помощь) очень помогли)
MARIZZA_B
Подскажите, не получается:1.составить программу для вывода на экран символов + расположив их в столбец.
Вот что получилось у меня:
program pr1;
var s:string;
i:integer;
begin
i:=43;
writeln ('vvedite simvols');
readln;
while (i<43) and (i>43) do
begin
writeln (chr(i));
readln;
begin
for i:=43 to length(s) do
writeln (s[i]);
end;
end;
end.


Программа ошибок не находит, но и результат не выдает, вроде сделала, как объясняли, а что не так не пойму.
Sixthirty
Код
program pr1;
var
  s:string;
  i:integer;
begin
  s:='';
  writeln('Enter symbols');
  readln(s);
  for i:=1 to length(s) do
  writeln(s[i]);  
end.


Подразумевается, что вводить символы вы будете без пробелов, а окончание ввода произведете нажатием на enter.
MARIZZA_B
Цитата(Sixthirty @ 8.5.2011, 20:39) *

Код
program pr1;
var
  s:string;
  i:integer;
begin
  s:='';
  writeln('Enter symbols');
  readln(s);
  for i:=1 to length(s) do
  writeln(s[i]);  
end.


Подразумевается, что вводить символы вы будете без пробелов, а окончание ввода произведете нажатием на enter.

Спасибо smile.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2024 Invision Power Services, Inc.