Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 2 / 0
Регистрация: 06.10.2009
Сообщений: 23

Задание из методички на динамические массивы.

06.10.2009, 18:55. Показов 2040. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите!

Задача на динамические массивы..

Вводится число К.
Найдите К-ное по счёту число, у которого ни одна цифра не повторяется.
Ипользовать Динамические массивы. При решении не использовать что-либо сложнее них.


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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
Type
 IntArray = Array Of Integer;
 
Function GetDigits(n: Integer): IntArray;
Var
 x: IntArray;
Begin
 While (n <> 0) Do
  Begin
   SetLength(x, Length(x)+1);
   x[Length(x)-1] := n Mod 10;
   n := n Div 10;
  End;
 GetDigits := x;
End;
 
Function Kras(x: Integer): Boolean;
Var
j: Array[1..1000000] Of Integer;
jk, mm, summ, ii, jj: Integer;
 y: IntArray;
Begin
 summ := 0;
 jk := 1;
   y := GetDigits(x);
  For ii := Length(y)-1 DownTo 0 Do
   Begin
    j[jk] :=  y[ii];
    Inc(jk);
   End;
  For jj := 1 To jk-1 Do
   Begin
    For mm := jj+1 To jk Do
     Begin
      If (j[jj] = j[mm]) Then
      Begin
       Inc(summ);
      End;
     End;
    End;
 If summ = 0 Then
  Begin
   Kras := TRUE;
  End
 Else
  Begin
   Kras := FALSE;
  End;
End;
 
 
 
Var
 i: Array[1..100000] Of Integer;
 k, k1, l, gg: Integer;
Begin
 Read(k);
 For gg := 1 To 10000 Do
  i[gg] := gg;
 k1 := 0;
 l := 1;
 While (k1 <> k) Do
  Begin
   If Kras(i[l]) Then
    Begin
     Inc(k1);
    End;
   Inc(l);
  End;
 WriteLn(i[l]);
End.

В функции Kras выдаёт рантайм... Где у меня ошибка?

Добавлено через 39 секунд
Извините, что не умею пользоваться тэгами
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.10.2009, 18:55
Ответы с готовыми решениями:

Задание на динамические массивы: найти произведение двух матриц
используя процедуры: 1)ввода матрицы из текстового файла, 2)произведения двух матриц(проверить соответствие размерностей) 3)вывода...

Как понять данное задание из методички? (фото)
Собственно столкнулся с трудностями в понимании задания по фортрану, решается однозначно в одну строчку, только что от меня надо, кто...

Динамические массивы и функции. Динамические массивы.
Дана матрица 6х8 целого типа. Создать одномерный массив, содержащий элементы матрицы, кратные числу, введенному с клавиатуры.

6
(Yellow_Duck)
 Аватар для MadMag
1261 / 130 / 15
Регистрация: 16.10.2008
Сообщений: 733
06.10.2009, 23:31
Цитата Сообщение от ruslan-gonch Посмотреть сообщение
j: Array[1..1000000] Of Integer;
Попробуй 1000000 или 100000
И не надо так часто писать Begin и end, их пишут когда объединяют группу операторов, а не один!
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Function Kras(x: Integer): Boolean;
Var
j: Array[1..100000] Of Integer;
jk, mm, summ, ii, jj: Integer;
 y: IntArray;
Begin
 summ := 0;
 jk := 1;
   y := GetDigits(x);
  For ii := Length(y)-1 DownTo 0 Do
   Begin
    j[jk] :=  y[ii];
    Inc(jk);
   End;
  For jj := 1 To jk-1 Do
    For mm := jj+1 To jk Do
      If (j[jj] = j[mm]) Then  Inc(summ);
 If summ = 0 Then Kras := TRUE
 Else  Kras := FALSE;
End;
Вот как можно записать твою функцию. Гораздо более проще для чтения. На будущее.

Добавлено через 1 минуту
И еще: переменные обычно обозначают более значимыми именами, массивы именами mas, a..., индексы:i,j,k...
1
0 / 2 / 0
Регистрация: 06.10.2009
Сообщений: 23
06.10.2009, 23:43  [ТС]
Теперь ошибка исчезла, но он выдаёт неверные значения...
должно быть 11 12, а он выдаёт 11 14..
0
(Yellow_Duck)
 Аватар для MadMag
1261 / 130 / 15
Регистрация: 16.10.2008
Сообщений: 733
06.10.2009, 23:51
Очевидно, ты не правильно сделал функцию)
1
0 / 2 / 0
Регистрация: 06.10.2009
Сообщений: 23
07.10.2009, 00:02  [ТС]
Кажется, догадался!
Спасибо!
0
(Yellow_Duck)
 Аватар для MadMag
1261 / 130 / 15
Регистрация: 16.10.2008
Сообщений: 733
07.10.2009, 00:14
Старайся код более делать читабельным. Отформатирован хорошо, а вот begin и end просто тьма.
0
0 / 2 / 0
Регистрация: 06.10.2009
Сообщений: 23
08.10.2009, 17:07  [ТС]
Да уж так авторы методички советуют... Мало ли что
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.10.2009, 17:07
Помогаю со студенческими работами здесь

Указатели и массивы. Индексация с помощью указателей. Передача массивов в функции. Динамические массивы (обработка матриц)
Для каждого элемента , bij, i= 1,...,n , j=1,...,n определяется свой многоугольник местонахождением соответствующего элемента aij (см....

Структуры, массивы, указатели, динамические массивы структур
Помогите с решением задачи (прикрепляю условие). Заранее спасибо.

Статические массивы,Динамические массивы,строки
1)Создать двумерный массив A(N,M) целых положительных и отрицательных чисел с помощью функции Random. Найти произведение всех четных...

Динамические массивы
Доброго времени, ищу помощи по данному вопросу, сам разобраться не в состоянии в виду полного отсутствия знания языка. Для матрицы А...

динамические массивы
помогите пожалуйста с заданием по динамическим массивам: Разработать программу, которая создает список L, элементами которого является...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru