среди трехзначных чисел найти и вывести такие числа, у которых сумма крайних цифр равна средней
помогите, пожалуйста, составить программу, буду очень благодарна, попрошу как можно быстрее
Каким образом получены эти числа компютером в паскале
помогите, пожалуйста, составить программу, буду очень благодарна, попрошу как можно быстрее
Каким образом получены эти числа компютером в паскале
Если уж писать программу, то лучше сначала подумать:
<img src="//sprtqa.b-cdn.net/download/ddea0e5e8cc7ccb22e3621738009a88e_i-939.jpg">
Почему так?
Строка 2) первая, вторая и третья цифры числа… Да. По отдельности, чтобы проще было с ними работать.
— 4) средняя цифра числа не может быть 0 потому, что она должна равняться сумме первой и последней. Но первая не может быть 0, иначе бы это было бы не трёхзначное, а двухзначное число.
— 5) первая цифра может быть любой, но не большей чем средняя.
— 7) третья цифра однозначно определяется из второй и первой.
Ну и строка Если это выглядит так как нужно, то пользователю программы не всё ли равно, что там заложено в программе?!
для i от 100 до 999
{
если (i - i mod 100)/100 + i mod 10 = (i mod 100 - i mod 10)/10
{
вывод i
}
}
Переводите на паскаль сами. Хоть что-то сами сделайте.
for i := 100 to 999 do
if (i div 100 + i mod 10 = i div 10 mod 10) then writln(i);
for middle := 1 to 9 do begin
for other := 1 to middle-1 do begin
writeln(other, middle, middle-other);
end
writeln(middle, middle, 0);
end