• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Одномерный массив

brickbazuka

Ученик
Регистрация
12 Янв 2016
Сообщения
11
Реакции
0
Баллы
0
Одномерный массив

1. Одномерный массив А длиной N<=20 заполнить случайными числами из диапазона [–10..55]. Составить программу определения:
• первого максимального элемента массива;
• количество максимальных элементов в массиве;
• всех элементов, кратных 3-м или 5-и.
2. Дан одномерный массив. Переместить нулевые элементы массива в конец, сдвинув остальные элементы влево.
3. Имеются сведения о количестве проданных билетов в 17-ти вагонах поезда. Найти наименее загруженный вагон, учитывая, что количество мест в вагоне зависит от типа вагона: в мягком и купейном вагонах — по 36 мест, а в плацкартном — 46 мест.
 
Если не трудно помогите, вообще не понимаю как выполнить эти задания.
Каждую программу написать с использованием подпрограмм (процедуры или функции)
1. Дано натуральное число. Найти первую и последнюю цифры числа.
2. Определить количество натуральных трехзначных чисел, сумма цифр которых равна заданному числу N.
3. Составить программу для проверки, можно ли заданное натуральное число N представить в виде куба простого числа.
 
Помогите пожалуйста!Pascal ABC, нужно сдать срочно до сессии.

1. Одномерный массив А длиной N<=20 заполнить случайными числами из диапазона [–10..55]. Составить программу определения:
• первого максимального элемента массива;
• количество максимальных элементов в массиве;
• всех элементов, кратных 3-м или 5-и.
2. Дан одномерный массив. Переместить нулевые элементы массива в конец, сдвинув остальные элементы влево.
3. Имеются сведения о количестве проданных билетов в 17-ти вагонах поезда. Найти наименее загруженный вагон, учитывая, что количество мест в вагоне зависит от типа вагона: в мягком и купейном вагонах — по 36 мест, а в плацкартном — 46 мест.
Буду признателен!
 
1. Одномерный массив А длиной N<=20

Код:
type Tmass=array[1..20] of integer;
var
     A:Tmass;
     n,i,max,mk,mt,mp:integer;
begin
      repeat
        Write('Razmer massiva 0<n<=20 = ');
         Readln(n);
      until (n>0) and (n<=20);
     Randomize;
      for i:=1 to n do
       begin
         A[i]:=Random(56)-10;
         Write(a[i]:4);
       end;
      Writeln;
     max:=-MaxInt;
     mk:=0; mt:=0; mp:=0;
      for i:=1 to n do
       begin
         if A[i]>max
          then
           begin
             max:=a[i];
             mk:=1;
           end
          else
           if A[i]=max
            then Inc(mk);
         if (A[i] mod 3)=0 then Inc(mt);
         if (A[i] mod 5)=0 then Inc(mp);
       end;
      Writeln('Max = ',max);
      Writeln('Max.elementov = ',mk);
      Writeln('Kratnih 3 = ',mt);
      Writeln('Kratnih 5 = ',mp);
     Readln;
end.
 
1. Дано натуральное число. Найти первую и последнюю цифры числа.

Вариант 1:

Код:
procedure Poisk(an:LongInt);
var  p,t:integer;
begin
     t:=an mod 10;
      While an<>0 do
       begin
         p:=an mod 10;
         an:=an div 10;
       end;
      Writeln('Pervaya cifra     = ',p);
      Writeln('Poslednyaya cifra = ',t);
end;
var  n:LongInt;
begin
      Write('Cislo = ');
       Readln(n);
        Poisk(n);
     Readln;
end.

Вариант 2:

Код:
procedure Poisk(as:string);
var p,t,i:integer;
begin
    p:=Ord(as[1])-Ord('0');
     i:=Length(as);
      t:=Ord(as[i])-Ord('0');
    Writeln('Pervaya cifra     = ',p);
     Writeln('Poslednyaya cifra = ',t);
end;
var  s:string;
begin
     Writeln('Cislo:');
      Readln(s);
       Writeln;
        Poisk(s);
     Readln;
end.
 
2. Дан одномерный массив. Переместить нулевые элементы массива в конец, сдвинув остальные элементы влево.

Код:
const n=15;
var a:array[1..n] of integer;
    i,j,t:integer;
begin
     Writeln('Massiv:');
      Writeln;
       Randomize;
       for i:=1 to n do
        begin
          a[i]:=Random(3)-1;
          Write(a[i]:4);
        end;
          Writeln; Writeln;
      t:=n;
      for i:=n downto 1 do
       if a[i]=0 then
        begin
          for j:=i to n-1 do
           a[j]:=a[j+1];
          a[n]:=0;
          Dec(t);
        end;
      if t=n
       then Writeln('Net nulevih elementov')
       else
        begin
          Writeln('Massiv posle sdviga:');
          Writeln;
          for i:=1 to n do
           Write(a[i]:4);
          Writeln;
        end;
      Readln;
end.
 
2. Определить количество натуральных трехзначных чисел, сумма цифр которых равна заданному числу N.

Код:
function Poisk(an:integer):integer;
var  a,b,c,x:integer;
begin
     x:=0;
      for a:=1 to 9 do
       for b:=0 to 9 do
        for c:=0 to 9 do
         if (a+b+c)=an
          then Inc(x);
     Poisk:=x;
end;
var  n:integer;
begin
      Write('N = ');
       Readln(n);
        Writeln;
         Writeln('Cisel = ',Poisk(n));
     Readln;
end.
 
Назад
Сверху