Помощь - Поиск - Пользователи - Календарь
Полная версия: Задания на массивы
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
NightPaladin
Народ очень прошу о помощи надо в кратчашие сроки разобраться со следующими заданиями

5. Дано натуральное число N. Найти наибольшее число M (M>1), на которое сумма цифр в цифровой записи числа N делится без остатка. Если такого числа нет, то вывести слово “НЕТ”. Пример. N=12345. M=5. Сумма цифр числа N (15) делится на 5.

6. В массивы вводятся элементы двух невозрастающих последовательностей Аi и Вj целых чисел, которые содержат 6 и 8 элементов соответственно. Необходимо вывести на экран общий список значений элементов этих последовательностей по их возрастанию без создания третьего массива.
7. Ввести массив чисел размером К*М (К и М заданные числа). "Особым" элементом массива назовем элемент, который является наибольшим в столбце и одновременно наибольшим в строке.
Определить количество "особых" элементов в введенном массиве.

8. Задана строка символов из 60 символов. Пользователь вводит подстроку, длинной от 5 до 20 символов. Выделить из исходной строки все подряд идущие последовательности, из которых можно составить введенную пользователем подстроку любой перестановкой символов. При этом, если в последовательности не хватает символов, то можно использовать 2 раза не более 3 символов.


Вообще у тех кто очень занят, чтобы отвлекаться на все задачи прошу присмотреться к последним (т.е. начинать с конца ) ну а вообще кто как может

Также были предложены следующие задачи, но по их описанию я так и не понял, чего ждут: аналитического решения или тоже на pascale взгляните пожалуйста и вы:

1. Число 127, 45 перевели из десятичной системы счисления в восьмеричную систему счисления. Найдите 1998 цифру после запятой.

2. Сумму восьмеричных чисел 17+1700+170000+ …..+1700 000000 перевели в шестнадцатеричную систему счисления. Найдите в записи числа, равного этой сумме, пятую цифру слева.
3. Заданы логические функции: F1 = 1 на наборах 0, 4 и

Требуется:
а) получить кратчайшую форму записи функции F2
б) проверить, является ли она тождественной функции F1 Ответ: F1 не тождественна F2

4. По обвинению в ограблении перед судом предстали Иванов, Петров, Сидоров. Следствием установлено следующее:
1) Если Иванов не виновен или Петров виновен, то Сидоров виновен.
2) Если Иванов не виновен, то Сидоров не виновен.
Виновен ли Иванов?
klem4
5) как-то так :

uses crt;
const n=10;
var i,s,m:integer;
Begin
clrscr;
readln(i);
readln(m);
repeat
inc(s,i mod n);
i:=i div n;
until i<1;
writeln('s=',s);
if s mod m = 0 then
writeln('Yes')
else writeln('No');
readln
end.
NightPaladin
Балогадрю, :D щас сверю с тем что у меня получилось,(надо чтобы покрасивве код был - это не мой каприз) smile.gif
klem4
что значит по красивее ? blink.gif
NightPaladin
ну как я ЭтО понял то типо - сведение к минимуму лишних переменных, создание удобного интерфейса, компактность - вообщем, брат - забей ты на это - неважно...
klem4
хмм вот это точно брутално решил :D вот тут можешь смело искать лишние переменные циклы итд =)

6)
uses crt;
const n=6;
m=8;
a:array[1..n] of integer = (5,-22,0,-124,125,1240);
b:array[1..m] of integer = (29,1000,2,0,421,5,1,-2000);

var i,j,temp:integer;
flag:boolean;
begin
clrscr;
repeat
flag:=true;
for i:=1 to n do
for j:=1 to m do
begin
if (i<=n-1) then
if not(a[i]<=a[i+1]) then
begin
temp:=a[i];
a[i]:=a[i+1];
a[i+1]:=temp;
flag:=false;
end;
if not(a[i]<=b[j]) then
begin
temp:=a[i];
a[i]:=b[j];
b[j]:=temp;
flag:=false;
end;
if j<=m-1 then
if not(b[j]<=b[j+1]) then
begin
temp:=b[j];
b[j]:=b[j+1];
b[j+1]:=temp;
flag:=false;
end;
end;
until flag;


for i:=1 to n do
write(a[i]:3,' ');
for j:=1 to m do
write(b[j]:3,' ');

end.

NightPaladin
Да ты что брат я ж говрю забей - главное решение, ну спасибо ника не ждал что прям не выходя из нета ответ получу
klem4
задача N 7 решалась на форуме, попробуй поискать "Силовые точки" или "Опорные точки".

а по поводу систем счисления : http://forum.pascal.net.ru/index.php?showt...indpost&p=38226
volvo
Цитата(klem4 @ 7.05.05 20:00)
задача N 7 решалась на форуме, попробуй поискать "Силовые точки" или "Опорные точки".

:no: "Седловые точки" ...
Матрицы - Седловые точки
klem4
/offtop
да как-только их не называют ! =)
/offtop
NightPaladin
2 Volvo & klem4
Спасибо приступаю к изучению
NightPaladin
Вот в приведённом решении к пятой задаче я не понял зачем просить пользователя вводить два числа?
klem4
задание вообще непонятное, что значит "если такого числа нет" ? любое число во первых делится на самого себя без остатка ...
вот у вас пример число 12345 , наибольшее число на которое делится сумма его цифр без остатка - 15, так как сумма 1+2+3+4+5 = 15.

наверное вариант, когда ответа нет, в отм случае, если сумма цифр образует простое число ?? 1,3,5,7,11...

да, извиняюсь, я не прав, я подумал что надо проверить, делится ли сумма цифр на введенное пользователем число M без остатка.
klem4
по заданию N 8 можешь привести пример ?
я по поводу перестановок не оченьпонял, а вообще напоминает почему-то вот это : http://forum.pascal.net.ru/index.php?showtopic=4898
NightPaladin
Цитата
наверное вариант, когда ответа нет, в отм случае, если сумма цифр образует простое число ?? 1,3,5,7,11...


ДА скорее всего так просто условие немного не коректно, я тоже сначало подумал, что вообще наиболее большим делителем будет само это число lol.gif



Цитата
да, извиняюсь, я не прав, я подумал что надо проверить, делится ли сумма цифр на введенное пользователем число M без остатка.



А как теперь надо?
Если ты не очень занят могу бы объяснить сам алгоритм программы, т.е. по какому принципцу она должна это делать.
NightPaladin
Цитата(klem4 @ 8.05.05 14:34)
по заданию N 8 можешь привести пример ?
я по поводу перестановок не оченьпонял, а вообще напоминает почему-то вот это : http://forum.pascal.net.ru/index.php?showtopic=4898


К огромному сожалению - примера нет...
NightPaladin
2KLEM4
Друг извини конечно, и не подумай, что я наглый. Ты единственный кто мне щас помогает, и у меня опять просьба ты не мог бы присмотреться к заданиям по математике, т.е. тем, что после паскальных, насколько я понял, то их надо просто решить - без применения языка, а ты, что скажешь?
klem4
по поводу математики ничего сказать не могу, а по поводу задачи, так как S число не большое, то можно вот так в лоб :
uses crt;
const n=10;
var i:longint;
s,m:integer;
Begin
clrscr;
readln(i);
repeat
inc(s,i mod n);
i:=i div n;
until i<1;
writeln('s=',s);

m:=0;
for i:=2 to s-1 do
if ((s mod i) = 0)and(s<>i) then
m:=i;
if m=0 then
writeln('No')
else
writeln('m=',m);
readln
end.
NightPaladin
Благодарю, щас се скину...
volvo
Цитата(NightPaladin @ 8.05.05 18:03)
ты не мог бы присмотреться к заданиям по математике, т.е. тем, что после паскальных, насколько я понял, то их надо просто решить - без применения языка, а ты, что скажешь?

Если без Паскаля - то запостил бы ты их в форум "Математика"... Глядишь - там тебе быстрее помогут...
NightPaladin
Цитата(volvo @ 8.05.05 18:32)
Если без Паскаля - то запостил бы ты их в форум "Математика"... Глядишь - там тебе быстрее помогут...


Я просто сомневаюсь, в условиях ничего не сказано, я подумал, что может надо написать прогу которая автоматически выполинт задания, но так как сомневался и в разделе Математика тоже написал - никто ещё не ответил, а сёдня крайняк - очень важно!!! sad.gif sad.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.