По разделам

 

Решение задачи Array 99


Дан целочисленный массив размера N. Удалить из массива все элементы, встречающиеся более двух раз, и вывести размер полученного массива и его содержимое.

Код (C/C++)

#include <stdio.h>
int main(void)
{
    int a[10];
    int n;
    printf("N: ");
    scanf("%i",&n);
 
    int i;
    for (i=0; i<n; ++i){
        printf("a[%i] : ",i+1);
        scanf("%i",&a[i]);
    }
 
    int ai,i2, k, num;
    for (i=0; i<n;i++){
      num=0;
      for (i2=0; i2<n; ++i2) if (a[i]==a[i2]) ++num;
 
      if (num>2){
          k=i-1;
          ai=a[i];
          for (i2=i;i2<n;++i2)
              if (a[i2]!=ai){
                  ++k;
                  a[k]=a[i2];
              }
          n=k+1;
          --i;
      }
   }
 
    printf("A - %i\n",n);
    for (i=0; i<n; ++i) printf("  %i: %i\n",i+1,a[i]);
 
    return 0;
}

Код (Python)

import random

N = random.randrange(2,21)
a = [random.randrange(0,5) for i in range(N)]

print("N = ", N)
print("Array:\n",a)

i = 0
while i < len(a) :
    x = a[i]
    k = 0
    for y in a :
        if x == y :
            k += 1
    if k > 2 :
        flag = True
        while flag :
            try:
                a.remove(x)
            except ValueError:
                flag = False
    else :
        i += 1
        

print("Modified Array:\n",a)
print("Length:\n",len(a))
									

Код (Pascal)

program Array99;
var
  a : array[1..10] of Integer;
  N,i,i2,i3,num:Integer;
 
begin
  Write('N: ');
  Readln(N);
 
  Writeln('A: ');
  for i:=1 to N do
   begin
    write(i,' :');
    readln(a[i]);
   end;
 
   i:=1;
   while (i<=N) do //основной цикл, бежим по массиву до конца
    begin
     num:=0;
     for i2:=1 to N do if a[i]=a[i2] then inc(num); //подсчитываем кол-во элементов равных a[i]
     if num<=2 then i:=i+1 //если кол-во элементов оказалось меньше 2 смотрим следующий элемент
     else // иначе
      begin
       for i2:=N downto i do // если кол-во элементов оказалось больше 2 удаляем элементы равные a[i]
        if a[i]=a[i2] then // сравниваем элементы
         begin        //если совпало удаляем
          N:=N-1;
          for i3:=i2 to N do a[i3]:=a[i3+1];
         end;
      end;
    end;
 
 
  Writeln(N);
  for i:=1 to N do writeln(i,' :',a[i]);
end.
									




Array. Абрамян
Array 1 Просмотров: 10194
Array 2 Просмотров: 7006
Array 3 Просмотров: 5719
Array 4 Просмотров: 4893
Array 5 Просмотров: 6605
Array 6 Просмотров: 4550
Array 7 Просмотров: 4459
Array 8 Просмотров: 4751
Array 9 Просмотров: 4276
Array 10 Просмотров: 3911
Array 11 Просмотров: 4687
Array 12 Просмотров: 3775
Array 13 Просмотров: 3350
Array 14 Просмотров: 2851
Array 15 Просмотров: 4407
Array 16 Просмотров: 3428
Array 17 Просмотров: 3299
Array 18 Просмотров: 4426
Array 19 Просмотров: 2952
Array 20 Просмотров: 4677
Array 21 Просмотров: 2687
Array 22 Просмотров: 2420
Array 23 Просмотров: 2854
Array 24 Просмотров: 2671
Array 25 Просмотров: 2204
Array 26 Просмотров: 2878
Array 27 Просмотров: 2365
Array 28 Просмотров: 3072
Array 29 Просмотров: 1787
Array 30 Просмотров: 2616
Array 31 Просмотров: 2058
Array 32 Просмотров: 2445
Array 33 Просмотров: 1796
Array 34 Просмотров: 2113
Array 35 Просмотров: 1482
Array 36 Просмотров: 1571
Array 37 Просмотров: 3077
Array 38 Просмотров: 1653
Array 39 Просмотров: 1706
Array 40 Просмотров: 1921
Array 41 Просмотров: 1721
Array 42 Просмотров: 1381
Array 43 Просмотров: 1642
Array 44 Просмотров: 1517
Array 45 Просмотров: 1583
Array 46 Просмотров: 1389
Array 47 Просмотров: 1812
Array 48 Просмотров: 2915
Array 49 Просмотров: 1796
Array 50 Просмотров: 1340
Array 51 Просмотров: 2151
Array 52 Просмотров: 1992
Array 53 Просмотров: 1543
Array 54 Просмотров: 1538
Array 55 Просмотров: 1399
Array 56 Просмотров: 1262
Array 57 Просмотров: 1497
Array 58 Просмотров: 1401
Array 59 Просмотров: 1772
Array 60 Просмотров: 1291
Array 61 Просмотров: 1250
Array 62 Просмотров: 2109
Array 63 Просмотров: 1657
Array 64 Просмотров: 1362
Array 65 Просмотров: 1739
Array 66 Просмотров: 1586
Array 67 Просмотров: 1301
Array 68 Просмотров: 2463
Array 69 Просмотров: 1869
Array 70 Просмотров: 1766
Array 71 Просмотров: 1488
Array 72 Просмотров: 1409
Array 73 Просмотров: 1187
Array 74 Просмотров: 1425
Array 75 Просмотров: 1598
Array 76 Просмотров: 1421
Array 77 Просмотров: 1202
Array 78 Просмотров: 1417
Array 79 Просмотров: 1201
Array 80 Просмотров: 1162
Array 81 Просмотров: 1073
Array 82 Просмотров: 958
Array 83 Просмотров: 879
Array 84 Просмотров: 868
Array 85 Просмотров: 1013
Array 86 Просмотров: 1494
Array 87 Просмотров: 873
Array 88 Просмотров: 923
Array 89 Просмотров: 966
Array 90 Просмотров: 1762
Array 91 Просмотров: 1122
Array 92 Просмотров: 1363
Array 93 Просмотров: 1371
Array 94 Просмотров: 1171
Array 95 Просмотров: 1589
Array 96 Просмотров: 1300
Array 97 Просмотров: 1174
Array 98 Просмотров: 1889
Array 99 Просмотров: 1118
Array 100 Просмотров: 1084
Array 101 Просмотров: 1141
Array 102 Просмотров: 864
Array 103 Просмотров: 934
Array 104 Просмотров: 913
Array 105 Просмотров: 744
Array 106 Просмотров: 1117
Array 107 Просмотров: 961
Array 108 Просмотров: 1022
Array 109 Просмотров: 957
Array 110 Просмотров: 1027
Array 111 Просмотров: 903
Array 112 Просмотров: 1728
Array 113 Просмотров: 1251
Array 114 Просмотров: 1085
Array 115 Просмотров: 1206
Array 116 Просмотров: 2170
Array 117 Просмотров: 1640
Array 118 Просмотров: 895
Array 119 Просмотров: 792
Array 120 Просмотров: 971
Array 121 Просмотров: 912
Array 122 Просмотров: 986
Array 123 Просмотров: 940
Array 124 Просмотров: 811
Array 125 Просмотров: 841
Array 126 Просмотров: 781
Array 127 Просмотров: 790
Array 128 Просмотров: 859
Array 129 Просмотров: 866
Array 130 Просмотров: 922
Array 131 Просмотров: 1097
Array 132 Просмотров: 882
Array 133 Просмотров: 780
Array 134 Просмотров: 1239
Array 135 Просмотров: 774
Array 136 Просмотров: 926
Array 137 Просмотров: 891
Array 138 Просмотров: 771
Array 139 Просмотров: 898
Array 140 Просмотров: 1501

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться



Заявка на расчет