Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.04.2010, 17:17   #1
Артём555
Пользователь
 
Регистрация: 26.04.2010
Сообщений: 14
Плохо Одномерные массивы

1)Дан массив целых чисел,состоящий из 15 элементов.Заполнить его с клавиатуры.Найти:
-Сумму положительных чисел,значения которых не меньше10
-вывести индексы тех элементов значения которых кратны 3 и 5
-определить есть ли пара соседних элементов с суммой,равной заданному числу
-заменить перый отрицательный элемент нулём
-умножить все элементы,кратные 3,на третий элемент массива
2)Дан массив целых чисел(n=10) запосленный случайными числами из промежутся [-40,30]
-удалить из него все элементы,которые состоят из одинаковых цифр(включая однозначные).
-вставить число К перед всеми элементами, в которых есть цифра 1 (К с клавиатуры вводится)
-переставить три первые и последние элемента местами,сохраняя их следование

плохо дружу с массивами хелп плиЗ
Артём555 вне форума Ответить с цитированием
Старый 28.04.2010, 18:59   #2
kakawkin
Форумчанин
 
Регистрация: 21.09.2009
Сообщений: 431
По умолчанию

Вот написал - длжны быть все правельно. Написал для первого пункта только:

Код:
program tt;
var a:array[1..15] of integer;
begin
 for i:=1 to 15 do
  begin
   write('a[',i,']=');
   readln(a[i]);
  end;
end.  


-Сумму положительных чисел,значения которых не меньше10
for i:=1 to 15 do if a[i]>=10 then s:=s+a[i] else s:=s+0;
  
  
-вывести индексы тех элементов значения которых кратны 3 и 5
for i:=1 to 15 do if (a[i] mod 3) and (a[i] mod 5) then writeln(a[i]);
  
  
 -определить есть ли пара соседних элементов с суммой,равной заданному числу
for i:=1 to 15 do if a[i]+a[i+1]=s then write(a[i],'+',a[i+1],' = ',s)

-заменить перый отрицательный элемент нулём
for i:=1 to 15 do if a[i]<0 then a[i]:=0;
    
	
-умножить все элементы,кратные 3,на третий элемент массива
for i:=1 to 15 if (a[i] mod 3)=0 then begin s:=a[i]*a[3];a[i]:=s; end;
C ТЕБЯ + !
kakawkin вне форума Ответить с цитированием
Старый 28.04.2010, 19:04   #3
kakawkin
Форумчанин
 
Регистрация: 21.09.2009
Сообщений: 431
По умолчанию

-переставить три первые и последние элемента местами,сохраняя их следование
var a;array[1..10] of integer;b:array[1..10] of integer;
begin
afor i:=1 to 10 do b[i]:=a[i];
a[1]:=b[10];
a[2]:=b[9];
a[3]:=b[8];
a[8]:=b[3];
a[9]:=b[2];
a[10]:=b[1];
kakawkin вне форума Ответить с цитированием
Старый 28.04.2010, 19:09   #4
kakawkin
Форумчанин
 
Регистрация: 21.09.2009
Сообщений: 431
По умолчанию

а для задачи "вставить число К перед всеми элементами, в которых есть цифра 1 (К с клавиатуры вводится)"

Есть пример другой давно писал ее:
program char;
var a:array[1..n] of char;i:integer;
begin
for i:=1 to 7 do readln(a[i]);
for i:=1 to 7 do
if a[i]='A' then .... else ....
....

Т.е. тут идет проверка символов, и если в веденной строке под определенным индексом есть символ А то ....

Измени под числа и делов то
kakawkin вне форума Ответить с цитированием
Старый 28.04.2010, 19:11   #5
Филантроп
Форумчанин
 
Аватар для Филантроп
 
Регистрация: 12.04.2010
Сообщений: 134
По умолчанию

Цитата:
Код:
var a;array[1..10] of integer;b:array[1..10] of integer;
begin
afor i:=1 to 10 do b[i]:=a[i];
a[1]:=b[10];
a[2]:=b[9];
a[3]:=b[8];
a[8]:=b[3];
a[9]:=b[2];
a[10]:=b[1];
может лучше так
Код:
program tt;
var a:array[1..10] of integer;
i,k,t:integer;
begin
for i:=1 to 10 do
begin
write('a[',i,']=');
readln(a[i]);
end;
end.
k:=2;
for i:=1 to 3 do
begin
t:=a[i];
a[i]:=a[n-k];
a[n-k]:=t
dec(k);
end;
writeln;
for i:=1 to 10 do
write(a[i]:6);
readln;end.
кому нужна помощь! жду в аське и скайпе!

Последний раз редактировалось Филантроп; 28.04.2010 в 19:21.
Филантроп вне форума Ответить с цитированием
Старый 28.04.2010, 19:17   #6
kakawkin
Форумчанин
 
Регистрация: 21.09.2009
Сообщений: 431
По умолчанию

если честно я не понял ваше решение - напишите задачу полностью - тогда будет понятнее:
program tt;
var a:array[1..10] of integer;
begin
for i:=1 to 10 do
begin
write('a[',i,']=');
readln(a[i]);
end;
end.

Вот сюда впеши свое решение
kakawkin вне форума Ответить с цитированием
Старый 28.04.2010, 19:25   #7
1992
Новичок
Джуниор
 
Регистрация: 28.04.2010
Сообщений: 2
По умолчанию

В массив введены результаты кол-во садков:
Вывести номер месяца
Название месяца
Среднее кол-во осадков
1992 вне форума Ответить с цитированием
Старый 28.04.2010, 20:04   #8
kakawkin
Форумчанин
 
Регистрация: 21.09.2009
Сообщений: 431
По умолчанию

создай новую тему - помогу решить а так извини
kakawkin вне форума Ответить с цитированием
Старый 21.12.2011, 21:31   #9
прохендос
Новичок
Джуниор
 
Регистрация: 21.12.2011
Сообщений: 1
Восклицание

1.Дан массив целых чисел,состоящий из 10 элементов.Заполнить его с клавиатуры.
найти:
-удвоенную сумму положительных элементов.
-вывести индексы тех элементов,значения которых больше,предыдушего элемента(начиная со второго)
2.Определить,есть ли 2 пары соседних элементов с одинаковыми знаками.
прохендос вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
одномерные массивы. lilia2121 Помощь студентам 6 15.04.2010 20:22
Одномерные массивы Takada_sony Помощь студентам 8 25.03.2010 17:50
Одномерные массивы Neyrone Помощь студентам 8 23.12.2009 16:12
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент LyaLya Помощь студентам 15 20.12.2009 14:12