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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.12.2013, 18:54   #1
PASKAL12
Пользователь
 
Регистрация: 06.10.2013
Сообщений: 10
По умолчанию Дано линейный целочисленный массив. Заменить в нем все элементы, значение которых меньше некоторог числа К на значение К. Подсчита

Дано линейный целочисленный массив. Заменить в нем все элементы, значение которых меньше некоторого числа К на значение К. Подсчитать количество таких замен.
где не правильно?
Код:
Var a:array[1..150] of longint;
    i,n,k,y:longint;
BEGIN
REad (n);
y:=0;
for i:=1 to n do
read (a[i]);
read (k);
if (a[i])<k then write (a[k]);
y:=y+1;
Write (y);
readln;
readln;
end.
PASKAL12 вне форума Ответить с цитированием
Старый 04.12.2013, 19:16   #2
ogamilait
Пользователь
 
Регистрация: 09.11.2013
Сообщений: 60
По умолчанию

Рабочый пример:
Код:
program p1;
var
  a:array[1..150] of integer;
  i,k,n:integer;
begin
  randomize; // Подключаем генератор случайных чисел
  n:=0;
  readln(k);
  for i:=1 to 150 do    // Заполняем массив случайными данными
    a[i]:=random(300); // Диапазон даных от 0 до 300
// Проверяем каждый елемент масива на < k 
for i:=1 to 150 do
begin
  if a[i] < k then
  begin
    n:=n+1;
    a[i]:=k;
  end;
end;
writeln(n);
readln;          
end.
ogamilait вне форума Ответить с цитированием
Старый 04.12.2013, 19:30   #3
ogamilait
Пользователь
 
Регистрация: 09.11.2013
Сообщений: 60
По умолчанию

А это пример для наочности:
Код:
program p1;
const
  a:array[1..5] of integer=(1,2,5,3,1);
var
  b:array[1..5] of integer; // Создали новый массив в который занесен измененный данные что б вывести на екран пример, т.к. записать даные в масив "а" потом будет невозможно т.к. это константа.
  i,k,n:integer;
begin
  n:=0;
  readln(k);
// Проверяем каждый елемент масива на < k 
for i:=1 to 5 do
begin
b[i]:=a[i]; 
  if a[i] < k then
  begin
    n:=n+1;   // Подщитываем количество замен
    b[i]:=k;  // Заменяем даный елемент масива значениям k
  end;
end;
write('Количество замен:');
writeln(n); // Количество замен
writeln('Новый масив:');
for i:=1 to 5 do // Выводим наш измененный масив на екран
write(b[i]+',');    
end.

Последний раз редактировалось ogamilait; 04.12.2013 в 19:33.
ogamilait вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удалить из массива все элементы, значение которых в этом массиве повторяются, оставив по одному. East Undia Trading Помощь студентам 10 23.10.2013 08:25
Дан массив X(N).Найти среднеквадратичное всех элементов массива и заменить этим значение нулевые элементы массива. sev48fire Паскаль, Turbo Pascal, PascalABC.NET 3 21.06.2012 23:44
Дано n. Получите все совершенные числа, меньше n. Anvilion Помощь студентам 4 08.12.2011 20:06
Получить массив B, присвоив его k-му элементу значение 0, если все элементы [Pascal] М@лышка Помощь студентам 10 12.10.2009 23:29
сумма всех начальных членов ряда, значение которых не меньше заданного числа e, 0<e<1 Арчи Помощь студентам 2 20.12.2008 12:39