Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Целочисленная арифметика






Алгоритмы по работе с целыми числами подробно рассмотрены в [2]. Поэтому рассмотрим следующий пример как напоминание и основу для реализации подобных задач. Необходимо обратить внимание, что при решении задач по теме “распаковка целых чисел” также можно работать с числами, представленными как строки символов; иногда это значительно упрощает решение задачи.

Задача. Даны натуральные числа и . Проверить, есть ли в записи числа цифра .

Форма имеет следующий вид (рис. 15):

Рис.15

Фрагмент кода:

{***********************************************************}

procedure Tfrm_Z4.bBtn_OKClick(Sender: TObject);

var N, k, m, i, z: Byte;

p, p_ish: Longword;

f: Boolean;

begin

N: =StrToInt(edt_N.Text);

k: =StrToInt(edt_k.Text);

m: =StrToInt(edt_m.Text);

p: =N;

for i: =2 to k do p: =p*N; {накопление степени}

p_ish: =p; {дублируем полученное N в степени k}

f: =false;

{f - «флажок», его значение изначально ложно в предположении, что цифра m не входит в запись N в степени k}

while p< > 0 do

begin

z: =p mod 10;

if z=m {если цифра z совпала с m}

then begin

f: =true;

p: =0 {обнуляем р, чтобы не продолжать цикл}

end;

p: =p div 10;

end;

if f

then lbl_Result.Caption: ='Цифра '+edt_m.Text+' встречается в

записи числа '+IntToStr(p_ish)

else lbl_Result.Caption: ='Цифра '+edt_m.Text+' не встречается в записи числа '+IntToStr(p_ish);

end;

{***********************************************************}


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал