Другие языки программирования и технологии

Объясните, что значит "найти цифры трехзначного числа" - язык Паскаль. Не врубаюсь совсем...

И еще, как определить число-палиндром (цифры в обратном порядке)
Surxon Ko'mir
Surxon Ko'mir
1 069
число из цифр состоит. для 3-значного числа - это сотни, десятки и единицы (напр. 123 - 1, 2 и 3, разбиваешь на эти составляющие, затем в обратной последовательности складываешь 3*100+2*10+1 и получаешь число 321)
СК
Сергей Кожемяко
3 719
Лучший ответ
Surxon Ko'mir да нет же, как вообще программу написать, ну для образца, а то я не понимаю.
Если a - трехзначное число, то
a div 100 //сотни
(a mod 100) div 10 //десятки
a mod 10 //единицы

А по этой ссылке написан код проверки на число-палиндром, правда не на Паскале:

http://ru.efreedom.com/Question/1-199184/
Берешь число, ставиш счетчик 3 раза делить на 10, остаток от каждого деления записываешь в переменную, вот тебе и 3 числа, если первое и последнее равны - полиндром)
376903891 пиши в асю.
За небольшое вознаграждение напишу с пояснениями! А про палиндром уже есть...
Adlet Kaysaev
Adlet Kaysaev
600
Если ("Число" остаток деления на 99) > 0 тогда число трёх значное.
типо того:
(ch-число
hc в обратном порядке
c1 - сотни, с2 десятки, с3 единицы (для ch)
h1 вспомогательная переменная)

program name;
var c1, c2, c3, ch, hc, h1: integer;
begin
readln(ch);
c3:= ch mod 10;
h1:= ch mod 100;
c2:= (h1 - c3) div 10;
c1:=(ch - h1) div 100;
hc:= 100*c3+10*c2+c1;
writeln('c1=' c1:5, 'c2=' c2:5, 'c3=' c3:5, 'hc=' hc:5);
readln;
end.

вот пример:
вводим число 123
123/10 берём остаток - 3(единицы)
123/100 берём остаток - 23(десятки+единицы)
(23-3) делим без остатка на 10(чтоб остался интегер) =2 вот и десятки
(123 - 23) делим без остатка на 100(чтоб остался интегер) = 1 вот и сотни
число в обороте = 3*100+2*10+1
выводим числа

ps: возможны минимальные недочёты
Полад Мамедгасанов "hc:= 100*c3+10*c2+c1; "
это бред;
вместо этого надо
if (c1=c3) do
then wrileln('da')
else
writeln('net');

где то так

Похожие вопросы