М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Алино4ка15
Алино4ка15
30.04.2020 09:45 •  Информатика

Паскаль abc хочу сделать так, что бы если человек писал да, то программа предлагала бы ему ввести значения снова, а она пропускает строку 'введите коффициент а' и если человек отвечает нет или пишет еще что то, она выдавала фразу в конце( за использование). что я сделал не так? program pr1; const h = ', '; var a,b,c,d: real; name: string; t: boolean; begin writeln('введите свое имя: '); readln(name); writeln(h, name, ', вас программа-калькулятор квадратного уравнения' ); writeln('введите коеффициент "a"'); readln (a); writeln('введите коeффициент "b"'); readln (b); writeln('введите коeффициент "c"'); readln (c); d : = b*b-4*a*c; if d=0 then begin writeln ('x1,x2 =', (-b+sqrt(d)/(2*; end; if d< 0 then begin writeln ('d< 0, корней нет'); end; if d> 0 then begin writeln('d = ', b*b-4*a*c); writeln ('x1 =', (-b+sqrt(d)/(2*; writeln ('x2 =', (-b-sqrt(d)/(2*; end; writeln ('хотите воспользоваться калькулятором еще раз? введите t(да)\f(нет)'); readln; if t then writeln('введите коеффициент "a"'); readln (a); writeln('введите коeффициент "b"'); readln (b); writeln('введите коeффициент "c"'); readln (c); d : = b*b-4*a*c; if d=0 then begin writeln ('x1,x2 =', (-b+sqrt(d)/(2*; end; if d< 0 then begin writeln ('d< 0, корней нет'); end; if d> 0 then begin writeln('d = ', b*b-4*a*c); writeln ('x1 =', (-b+sqrt(d)/(2*; writeln ('x2 =', (-b-sqrt(d)/(2*; end else writeln (' за использование'); end.

👇
Ответ:
kamilakruvetka
kamilakruvetka
30.04.2020
Ты в условном операторе не указал что должно проверяться... И к тому же нет begin и end;. Также переменную t: string; сделай, так как иначе не выйдет.

У тебя:
readln; <- к тому же не указал что надо писать.
if t then <- что это такое? Ошибка.
writeln('Введите коеффициент "a"');
readln (a);
writeln('Введите коeффициент "b"');
readln (b);
writeln('Введите коeффициент "c"');
readln (c);
d := b*b-4*a*c;

Должно быть:

program Pr1;

const 
H = 'Здравствуйте, ';
var
a,b,c,d: real;
name, t: string;

Begin
writeln('Введите свое имя:');
readln(name);
writeln(H, name, ', вас приветствует программа-калькулятор квадратного уравнения' );
writeln('Введите коеффициент "a"');
readln (a);
writeln('Введите коeффициент "b"');
readln (b);
writeln('Введите коeффициент "c"');
readln (c);
d := b*b-4*a*c;
if d=0 then
begin
writeln ('X1,X2 =', (-b+sqrt(d)/(2*a)));
end;
if d<0 then
begin
writeln ('D<0, корней нет');
end;
if d>0 then
begin
writeln('D = ', b*b-4*a*c);
writeln ('X1 =', (-b+sqrt(d)/(2*a)));
writeln ('X2 =', (-b-sqrt(d)/(2*a)));
end;
writeln ('Хотите воспользоваться калькулятором еще раз? Введите T(Да)\F(Нет)');
readln(t);

t := t.ToLower;

if t = 'да' then
begin
writeln('Введите коеффициент "a"');
readln (a);
writeln('Введите коeффициент "b"');
readln (b);
writeln('Введите коeффициент "c"');
readln (c);
d := b*b-4*a*c;
end
else
за использование!');

if d=0 then
begin
writeln ('X1,X2 =', (-b+sqrt(d)/(2*a)));
end;

if d<0 then
begin
writeln ('D<0, корней нет');
end;

if d>0 then
begin
writeln('D = ', b*b-4*a*c);
writeln ('X1 =', (-b+sqrt(d)/(2*a)));
writeln ('X2 =', (-b-sqrt(d)/(2*a)));
end;
end.
4,5(36 оценок)
Открыть все ответы
Ответ:
ника3931
ника3931
30.04.2020
// PascalABC.NET 3.1, сборка 1218 от 12.04.2016
begin
  var a:=ArrRandom(100,-20,20); a.Println;
  WritelnFormat('Положительных {0}, отрицательных {1}',
    a.Where(x->x>0).Count,a.Where(x->x<0).Count)
end.

Тестовое решение:
-19 12 19 -17 -5 10 -13 -2 -4 16 -6 -12 -3 5 -3 -6 -1 8 -19 -14 -1 9 -10 20 -7 20 5 17 -7 11 -5 -14 -19 -18 16 13 11 -2 -3 9 1 11 10 -13 8 -14 -15 -13 8 5 -7 20 -20 18 2 -8 2 19 10 -5 -15 -10 -16 5 1 -12 -14 -6 9 5 3 -20 -9 -7 6 9 20 -18 -8 -13 14 -3 -11 9 -3 -5 -15 -16 0 4 -10 12 8 -19 4 -10 6 -15 7 0
Положительных 44, отрицательных 54
4,6(10 оценок)
Ответ:
бабеков
бабеков
30.04.2020
Так как в задании не указано, что введенное слово должно обрамляться пробелами, то код может быть такой:

var s,a:string;
    begin
    write('Введите строку : ');
    readln(s);
    write('Введите слово : ');
    readln(a);
       if(pos(a, s) <> 0) then writeln('Слово "',a,'" в строке есть')
       else writeln('В строке такого слова нет');
    end.

Тест №1
Введите строку : Привет участникам олимпиады!
Введите слово : ник
Слово "ник" в строке есть

Тест №2
Введите строку : Всем привет!
Введите слово : админ
В строке такого слова нет
4,8(51 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ