• Написать программу, в которой пользователь выбирает одну из предметных областей:математика или география. Если выбрана математика-компьютер по порядку задает три примера на вычисление (например: 4+3=?). Если выбрана география-компьютер спрашивает столицы трех государств. Компьютер проверяет ответы на правильность и в конце выводит оценку на экран:5-если не было ошибок, 4-одна ошибка, 3-две ошибки, 2-если все ответы неверные.

    Помогите пожалуйста, заранее благодарю.

Ответы 5

  • Обязательно соблюдать шрифт
  • спасибо большое
  • Реализовано в Pascaд.ABC.Net. Программа работоспособна без изменений в некоторых других версиях. Также, работоспособна в любой версии Паскаля после небольшой модификации.
    • Автор:

      polly68
    • 6 лет назад
    • 0
  • Особенностью является генерация трех случайно выбранных из десяти возможных вариантов по географии и большого числа случайно сгенерированных примеров на четыре действия арифметики в пределах первой сотни чисел.
    • Автор:

      grayson
    • 6 лет назад
    • 0
  • var  mCity: array [1..10] of string := ('Москва', 'Берлин', 'Париж', 'Лондон', 'Рим',    'Мадрид', 'Стокгольм', 'Берн', 'Вена', 'Афины');  mGov: array[1..10] of string := ('Россия', 'Германия', 'Франция',    'Великобритания', 'Италия', 'Испания', 'Швеция', 'Швейцария', 'Австрия', 'Греция');  mOps: array[1..4] of char := ('+', '-', '*', '/');  p, i, n, a, b, c, d, k: integer;  op: char;  s: string;begin  Write('Выберите предмет: 1- Математика, 2-География -->');  Readln(p);  if (p < 1) or (p > 2) then Writeln('Неверный выбор, работа завершена')  else begin    Randomize;    k := 0;    if p = 1 then { тестируем математику }      for i := 1 to 3 do      begin        op := mOps[Random(4) + 1];        case op of          '+':            begin              a := Random(50) + 1;b := Random(50) + 1;              c := a + b;Write(a, ' + ', b, ' = ');Readln(d)            end;          '-':            begin              a := Random(99) + 1;b := Random(a) + 1;              c := a - b;Write(a, ' - ', b, ' = ');Readln(d)            end;          '*':            begin              a := Random(9) + 1;b := Random(9) + 1;              c := a * b;Write(a, ' x ', b, ' = ');Readln(d) end;        else begin            c := Random(9) + 1;b := Random(9) + 1;a := b * c;            Write(a, ' : ', b, ' = ');Readln(d)          end        end;        if c = d then Writeln('Верно')        else begin Writeln('Неверно');k := k + 1 end      end    else { тестируем географию }      for i := 1 to 3 do      begin        Write('Столица государства ');        n := Random(10) + 1;        Write(mGov[n], ' - ');Readln(s);        {        на всякий случай преобразуем ответ, записав        первую букву в верхнем регистре, прочие - в нижнем        }        s := LowerCase(s);s[1] := UpperCase(s[1]);        if s = mCity[n] then Writeln('Верно')        else begin Writeln('Неверно');k := k + 1 end      end;    { Вывод результатов }    Write('Ваша отметка- ');    case k of      0: Write('5');      1: Write('4');      2: Write('3');    else write('2')    end  endend.Тестовые решения:Выберите предмет: 1- Математика, 2-География -->129 + 32 = 61Верно28 - 10 = 18Верно6 x 6 = 35НеверноВаша отметка- 4Выберите предмет: 1- Математика, 2-География -->2Столица государства Испания - МадридВерноСтолица государства Греция - АфиныВерноСтолица государства Великобритания - лондонВерноВаша отметка- 5
    • Автор:

      richard
    • 6 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years