![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 28.10.2008
Сообщений: 77
|
![]()
Из последовательности удалить все элементы, имеющие целую часть, кратную одному из двух наперед заданных чисел.
вот пример: Program Delete; {Удаление четных чисел из массива целых} Const Dim = 20; Type TMassiv = Array[1..Dim] of Integer; Var Massiv : TMassiv; J, I, Num, DelQuant : Byte; Begin Writeln ('Введите не более чем ',Dim,' целых чисел'); Writeln ('Конец ввода по ENTER'); Num := 0; {реальное число элементов в массиве} While not EOLN do Begin Inc (Num); Read (Massiv[Num]); End; Readln; I := 0; {позиция наблюдателя на I-м элементе массива} DelQuant := 0; {количество удаленных элементов} Repeat Inc (I); {сдвинуть наблюдателя вправо - перейти} {к проверке следующего числа} If Not Odd(Massiv[I]) then begin {I-ое число четное, удалить его из массива} Inc(DelQuant); {увеличить количество удаленных чи-сел} Dec (Num); {уменьшить количество элементов в массиве} For J := I to Num do Massiv[J] := Massiv[J+1]; {сдвиг влево} Dec (I) {переместить наблюдателя влево} end; Until I = Num; {повторять, пока не будут проверены все числа} If DelQuant = 0 then {удалений не было} Writeln('Массив не содержит четных элементов') else {удаления были} If Num <> 0 then begin Writeln ('Удалено ', DelQuant,' четных чисел'); Writeln ('Преобразованный массив'); For I := 1 to Num do Write (Massiv[I],' '); Writeln end else {все числа удалены} Writeln ('Массив пустой') End. |
![]() |
![]() |
![]() |
#2 | |
В тени
Старожил
Регистрация: 19.12.2008
Сообщений: 5,788
|
![]() Цитата:
Для взятия целой части - trunc, для взятия остатка - mod. А для кода - тег CODE.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем. ___________________________________ ___________________________________ _______ [=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль] |
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 28.10.2008
Сообщений: 77
|
![]()
а поподробней как это будет выглядеть
|
![]() |
![]() |
![]() |
#4 |
В тени
Старожил
Регистрация: 19.12.2008
Сообщений: 5,788
|
![]()
Наперед заданные числа - A и B.
Есть массив - mas. В цикле перебираем элементы: Код:
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем. ___________________________________ ___________________________________ _______ [=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль] |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 28.10.2008
Сообщений: 77
|
![]()
Program Delete;
{Удаление четных чисел из массива целых} Const Dim = 20; Type TMassiv = Array[1..Dim] of Integer; Var Massiv : TMassiv; A, B, J, I, Num, DelQuant : Byte; Begin Writeln ('Введите не более чем ',Dim,' целых чисел'); Writeln ('Конец ввода по ENTER'); Num := 0; {реальное число элементов в массиве} While not EOLN do Begin Inc (Num); Read (Massiv[Num]); End; Readln; I := 0; {позиция наблюдателя на I-м элементе массива} DelQuant := 0; {количество удаленных элементов} Repeat Inc (I); {сдвинуть наблюдателя вправо - перейти} {к проверке следующего числа} If (trunc(mas[i]) mod A = 0) or (trunc(mas[i] mod B = 0) then begin {} Inc(DelQuant); {увеличить количество удаленных чи-сел} Dec (Num); {уменьшить количество элементов в массиве} For J := I to Num do Massiv[J] := Massiv[J+1]; {сдвиг влево} Dec (I) {переместить наблюдателя влево} end; Until I = Num; {повторять, пока не будут проверены все числа} If DelQuant = 0 then {удалений не было} Writeln('Массив не содержит элементов имеющих целую часть, кратную одному из двух чисел') else {удаления были} If Num <> 0 then begin Writeln ('Удалено ', DelQuant,' чисел имеющих целую часть, кратную одному из двух заданых чисел'); Writeln ('Преобразованный массив'); For I := 1 to Num do Write (Massiv[i],' '); Writeln end else {все числа удалены} Writeln ('Массив пустой') End. вот так? |
![]() |
![]() |
![]() |
#6 | |
В тени
Старожил
Регистрация: 19.12.2008
Сообщений: 5,788
|
![]() Цитата:
Копи-паст - далеко не всегда хорошо. Повторю еще раз: код заключайте в теги CODE!
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем. ___________________________________ ___________________________________ _______ [=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль] |
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 28.10.2008
Сообщений: 77
|
![]()
так кто что еще подскажет
Последний раз редактировалось Ananim-Pbl6ak; 25.05.2009 в 13:58. |
![]() |
![]() |
![]() |
#8 | |
В тени
Старожил
Регистрация: 19.12.2008
Сообщений: 5,788
|
![]() Цитата:
Логически подумайте. Или, в конце концов, почитайте текст ошибок, которые вам выдает компилятор.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем. ___________________________________ ___________________________________ _______ [=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль] |
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 28.10.2008
Сообщений: 77
|
![]() Код:
|
![]() |
![]() |
![]() |
#10 | |
В тени
Старожил
Регистрация: 19.12.2008
Сообщений: 5,788
|
![]() Цитата:
Вы меня не слышите. Я сказал: не нужно копипастить не глядя. Код:
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем. ___________________________________ ___________________________________ _______ [=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль] |
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Удаление элементов из списка | Wi1D | Помощь студентам | 0 | 18.05.2009 00:23 |
Динамический список. Поиск и удаление элементов. | Paulo | Помощь студентам | 2 | 01.05.2009 12:37 |
удаление одинаковых элементов из массива | sauron99 | Общие вопросы Delphi | 6 | 15.04.2009 21:27 |
Удаление элементов из динамического массива | dashulka | Общие вопросы Delphi | 4 | 31.10.2008 14:03 |
Паскаль. Массивы. Замена элементов | Stelix | Помощь студентам | 2 | 06.11.2007 17:20 |