Консультация № 144472
20.09.2008, 14:34
0.00 руб.
0 3 1
Это задание для практики. Если можно, вышлите хотя бы ка решать их. А если можно, то и напишите решение. Заранее спасибо.

1. Задана последовательность N целых чисел. Вычислить сумму элементов массива, порядковые номера которых совпадают со значением этого элемента.
2. В доме проживают 70 семей. Найдите номер квартиры, в которой проживает самая многочисленная семья.
3. Дан целочисленный массив B[1..4,1..3]. Заменить все его элементы его квадратами.
4. Дана прямоугольная матрица. Найти строку с наибольшей суммой элементов.
5. Удалить из последовательности все повторные вхождения слов.
6. Напечатать слова, после которых в последовательности находятся только слова, большие по длине.
7. Определить, находятся ли слова последовательности в порядке возрастания длин слов. Если нет, то упорядочить их.

Обсуждение

Неизвестный
20.09.2008, 15:00
общий
А Вы вообще пробовали решать эти задачи? С чем конкретно не справились? С чем не разобрались?
Неизвестный
20.09.2008, 15:45
общий
это ответ
Здравствуйте, Филиппов Петр Сергеевич!
1) Задаешь одномерный массивчик, затем перебираешь его. а - массив, n - его порядок, sum - сумма, ее в конце выводишь на экран.
Часть кода:
for i:=1 to n do
if a[i]=i then sum:=sum+a[i];

2) Вычисляем максимальный элемент одномерного массива из 70 элементов и выводим его номер. max - максимум, num - номер квартиры, то есть самого большого элемента массива.
Часть кода:
max:=a[1];
for i:=2 to 70 do
if a[i]>max then begin
max:=a[i];
num:=i;
end;

3) Перебираем массив и возводим в квадрат каждый его элемент
Часть кода:
for i:=2 to 4 do
for j:=2 to 3 do
a[i,j]=a[i,j]*a[i,j];

4) Находим построчно сумму и запоминаем номер строки. n - порядок, sum - промежуточная суммам, maxsum - максимальная сумма, num - номер строки с максимальной суммой.
Часть кода:
maxsum:=0;
for i:=1 to n do begin
for j:=1 to n do begin
sum:=sum+a[i,j];
end;
if sum>maxsum then begin
maxsum:=sum;
num:=i;
end; end;


5,6,7) Однотипные задания. Честно говоря с текстами сто лет уже не работал. Слово в строковой переменной определяем по пробелам. Первое слово с 1-ой позиции, до первого пробела. Последнее слово - с последнего найденного пробела до конца, то есть до позиции, которая равна длине первоначального текста. Номер позиции пробела (конца/начала слова в предложении) можно вычислить в цикле:
for i:=1 to length(a) do
b:=COPY(a,i,1);
if b=' ' then...
Неизвестный
25.09.2008, 12:55
общий
Я самостоятельно разобрался с числовыми задачами (1..4) С текстами у меня пусто, т.к. вообще нет представления о символах, строках и тому подобной мути. Это для меня просто лес.
Форма ответа