Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
1 / 1 / 0
Регистрация: 03.10.2012
Сообщений: 39
1

Сформировать последовательность, в которой каждое число, записываемое двумя соседними цифрами, делится на 19 или 23

03.10.2012, 07:40. Показов 1529. Ответов 6
Метки нет (Все метки)

Сформировать последовательность, состоящую не менее чем из n цифр, такую, что каждое двухзначное число, записываемое двумя соседними цифрами (в том порядке, в каком они написаны), должно делиться на 19 или 23. Последовательность должна начинаться на заданную цифру.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.10.2012, 07:40
Ответы с готовыми решениями:

Составить последовательность наибольшей длины, в которой каждое следующее число делится на предыдущее
Доброе время суток! Пожалуйста помогите! Ввести положительные числа а1,,,аn(n<=100). Составить из...

Определить максимальную разность между двумя соседними цифрами числа
Написать программу для с++: Дано целое число N. Определить максимальную разность между двумя...

Дана монотонная последовательность, в которой каждое натуральное число k встречается ровно k раз
Дана монотонная последовательность, в которой каждое натуральное число k встречается ровно k раз:...

Заменить каждое число в строке символов на последовательность знаков + или - заключенную в круглые скобки
Вот такое задание: Дано предложение, состоящее из слов, разделенных запятой или пробелами, среди...

__________________
6
538 / 398 / 99
Регистрация: 18.08.2012
Сообщений: 1,024
03.10.2012, 12:43 2
Любопытная задачка и простая:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Uses Crt;
Const prime1 = 19;
      prime2 = 23;
Var
   n, X0, X10,
   i, NextDigit: Integer;
   Sequence: String;
Begin
  n:=10; {запрашиваемое число цифр последовательности}
  X0:=4; {первая цифра}
  Sequence:=Chr(X0 OR $30); {добавим в строку цифр}
  X10:=X0*10;
  For i:=1 to n do
    Begin
      NextDigit:=prime1 - (X10 mod prime1);
      If NextDigit < 10 then Sequence:=Sequence+Chr(NextDigit OR $30) {добавим в строку цифр}
      Else
        Begin
          NextDigit:=prime2 - (X10 mod prime2);
          If NextDigit < 10 then Sequence:=Sequence+Chr(NextDigit OR $30) {добавим в строку цифр}
          Else Break;  {последовательность не может быть продолжена}
        end;
      X10:=NextDigit*10;
    end;
End.
Возможная длина последовательности зависит от первой цифры
1
1 / 1 / 0
Регистрация: 03.10.2012
Сообщений: 39
03.10.2012, 15:37  [ТС] 3
А можно как-нибудь попроще....? только с циклом, просто мы этого ещё неучили, что-вы написали...
0
538 / 398 / 99
Регистрация: 18.08.2012
Сообщений: 1,024
03.10.2012, 16:49 4
Цитата Сообщение от RoacH_JIL Посмотреть сообщение
А можно как-нибудь попроще....? только с циклом, просто мы этого ещё неучили, что-вы написали...
Не очень понятно, что значит "попроще". Но может быть так?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Uses Crt;
Const prime1 = 19;
      prime2 = 23;
Var
   n, X0, X10,
   k, i, NextDigit: Integer;
   Sequence: Array[1..200] of Byte;
Begin
  n:=10; {запрашиваемое число цифр последовательности}
  X0:=4; {первая (заданная) цифра}
  k:=1;   {это будет индекс массива Sequence}
  Sequence[1]:=X0; {сохраним в массиве цифр первую заданную цифру}
  X10:=X0*10;
  For i:=1 to n do
    Begin
      NextDigit:=prime1 - (X10 mod prime1);
      If NextDigit < 10 then 
        Begin
           Inc(k);
           Sequence[k]:=NextDigit; {добавим в массив цифр}
        end
      Else
        Begin
          NextDigit:=prime2 - (X10 mod prime2);
          If NextDigit < 10 then 
            Begin
              Inc(k);
              Sequence[k]:=NextDigit; {добавим в массив цифр}
            end
          Else Break;  {последовательность не может быть продолжена}
        end;
      X10:=NextDigit*10;
    end;
{После выхода из цикла массив  Sequence будет содержать требуемую последовательность
цифр, а k будет равно количеству этих цифр}
End.
1
1 / 1 / 0
Регистрация: 03.10.2012
Сообщений: 39
04.10.2012, 19:03  [ТС] 5
это всё не то...
мне нужно чтобы программа запрашивала цифру-это будет первая цифра в последовательности...
потом к этой цифре добавляла вторую цифру и чтобы полученое число делилось на 23 или 19, потом ко второй цифре добавить третью и чтобы число из 2 и 3 цифры опять делилось на 23 или 19.... и так далее пока возможно выполнить... и в конце программы вывести эту последовательность на экран

Добавлено через 4 часа 4 минуты
Плиз помогите очень надо.... а то у меня рейтинг в универе неочень....
0
Почетный модератор
7957 / 3928 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
04.10.2012, 20:37 6
RoacH_JIL, как-то так?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
uses crt;
var i,n,cp,c: integer;
begin
write('n='); readln(n);
write(''); readln(cp);
write(cp);
for i:=1 to n do
    begin
    c:=(cp mod 10)*10;
    repeat
    inc(c);
    until (c mod 19=0) or (c mod 23=0);
    cp:=c;
    write(c);
    end;
end.
0
538 / 398 / 99
Регистрация: 18.08.2012
Сообщений: 1,024
05.10.2012, 00:59 7
Цитата Сообщение от RoacH_JIL Посмотреть сообщение
это всё не то...
мне нужно чтобы программа запрашивала цифру-это будет первая цифра в последовательности...
потом к этой цифре добавляла вторую цифру и чтобы полученое число делилось на 23 или 19, потом ко второй цифре добавить третью и чтобы число из 2 и 3 цифры опять делилось на 23 или 19.... и так далее пока возможно выполнить... и в конце программы вывести эту последовательность на экран

Добавлено через 4 часа 4 минуты
Плиз помогите очень надо.... а то у меня рейтинг в универе неочень....
Неужели так трудно вместо 9-ой и 10-ой строк (n:=10; X0:=4; ) написать Read(n); и ReadLn(X0);, а перед последней строкой вставить
Pascal
1
For i:=1 to k do Write(Sequence[i]);
? Ведь в комментариях все было написано. Думаю, что рейтинг таким образом поправить не удастся.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.10.2012, 00:59

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Если а делится на b или b делится на а, то вывести 1, иначе— любое другое число
Даны два целых числа а и b. Если а делится на b или b делится на а, то вывести 1, иначе— любое...

Если a делится на b или b делится на a, то вывести 1, иначе – любое другое число
Доброго времени суток! В С++ недавно, но в универе уже задали такие задачи: 4)Даны два целых...

Существует такое натуральное число N, что разность между любыми двумя соседними простыми числами
Существует такое натуральное число N, что разность между любыми двумя соседними простыми числами, ...

Занести в новый файл элементы исходного файла, образующие в сумме с двумя соседними четное число
Дан файл целых чисел, создать на его основе новый файл в которой занести элементы исходного файла,...

Существует такое натуральное число N, что разность между любыми двумя соседними простыми числами, не превосходящими N
Существует такое натуральное число N, что разность между любыми двумя соседними простыми числами,...

Двузначное число, образованное первыми двумя цифрами числа
Условие: Какое число образовано из пяти последовательных цифр (идущих не обязательно по порядку)...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.