Даны целые числа A и B, 0 ≤ B ≤ A. Последовательно вычисляются значения A – 1, A – 1 – 2, A – 1 – 2 – 3 и т. д. Необходимо вывести наибольшее из этих
значений, которое меньше B.
Для решения этой задачи ученик написал программу, но, к сожалению, его программа неправильная.
Ниже эта программа для Вашего удобства приведена на трех языках программирования
Паскаль |
С++ |
Питон |
var a, b, s, k: integer;
begin
read(a,b);
if not ((0<=b) and (b<=a)) then
writeln('Неверные данные')
else begin
s := 0;
k := 0;
while s > b do begin
k := k+1;
s := s-k;
end;
writeln(s)
end
end.
|
#include
using namespace std;
int main(){
int a, b, s, k;
cin >> a >> b;
if (!(0<=b && b<=a))
cout << "Неверные данные";
else {
s = 0;
k = 0;
while (s > b) {
k = k+1;
s = s-k;
}
cout << s;
}
return 0;
}
|
a = int(input())
b = int(input())
if not 0<=b<=a:
print("Неверные данные")
else:
s = 0
k = 0
while s > b:
k = k+1
s = s-k
print(s)
|
Напишите, что выведет эта программа при вводе чисел 12345 и 1234.