Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
Flatterer
4 / 3 / 0
Регистрация: 08.12.2009
Сообщений: 63
1

Произведение тех чисел, которые в двоичном представлении имеют неравное число нулей и единиц.

13.03.2010, 18:16. Просмотров 734. Ответов 1
Метки нет (Все метки)

Текстовый файл содержит несколько целых чисел, найти произведение тех чисел, которые в двоичном представлении имеют неравное число нулей и единиц.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.03.2010, 18:16
Ответы с готовыми решениями:

Указать то число заданного множества целых чисел, в двоичном представлении которого больше всего единиц
Указать то число заданного множества целых чисел, в двоичном представлении которого больше всего...

Указать то число заданного множества целых чисел, в двоичном представлении которого больше всего единиц
Поправьте код Указать то число заданного множества целых чисел, в двоичном представлении которого...

Из массива В удалить числа в двоичном представлении которых единиц больше, чем нулей
Переписать положительные числа из матрицы целых чисел А в массив В. Из массива В удалить числа в...

Указать то целое число и его порядковый номер при вводе, которое в двоичном представлении имеет наибольшее число единиц
Надо здавать задачу в универ :rtfm:, сколько ни сидел не получаеться:wall:. Пожалуйста напишите...

Указать то целое число и его порядковый номер при вводе, которое в двоичном представлении имеет наибольшее число единиц среди чи-сел, уже введенных
Указать то целое число и его порядковый номер при вводе, которое в двоичном представлении имеет...

1
Mawrat
12859 / 5763 / 1701
Регистрация: 19.09.2009
Сообщений: 8,807
13.03.2010, 20:40 2
Лучший ответ Сообщение было отмечено Flatterer как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
program Project1;
 
const
  FileName = 'data.txt';
var
  F : Text;
  (*Счётчик для циклов.*)
  i : Integer;
  (*Cnt < 0 - больше нулей.
  Cnt > 0 - больше единиц.
  Cnt = 0 - равное количество нулей и единиц.*)
  Cnt : Integer;
  (*Переменные для алгоритма перевода между системами счисления.*)
  Num1, Num2 : Integer;
  (*True - есть хотябы одно число с неравным количеством нулей и единиц.
  False - иначе.*)
  IsFound : Boolean;
  (*Произведение чисел, двоичное представление которых содержит неравное
  количество нулей и единиц.*)
  Mult : Integer;
  (*Для алгоритма распечатки двоичного представления и для прочих нужд.*)
  StrTmp : String;
begin
  repeat
    (*Запись в файл случайных целых чисел и показ их на экране.*)
    Assign(F, FileName);
    Rewrite(F); (*Создаём/пересоздаём файл и открываем его для записи.*)
    Writeln('Заданные числа:');
    Randomize;
    for i := 1 to 5 do begin
      Num1 := 1 + Random(10); //Dec: 1..10 -> Bin: 1..1010
      Writeln(F, Num1);
 
      (*Распечатка числа на экране.*)
      Write(Num1:4); (*Десятичное представление.*)
      StrTmp := '';
      repeat
        case Num1 mod 2 of
          0 : StrTmp := '0' + StrTmp;
          1 : StrTmp := '1' + StrTmp;
        end;
        Num1 := Num1 div 2;
      until Num1 = 0;
      Write('(', StrTmp:4, ')'); (*Двоичное представление.*)
    end;
    Writeln;
 
    Reset(F); (*Открываем файл для чтения.*)
    Mult := 1;
    IsFound := False;
    while not Eof(F) do begin
      Readln(F, Num2);
      Num1 := Num2;
      Cnt := 0;
      repeat
        case Num1 mod 2 of
          0 : Cnt := Cnt - 1;
          1 : Cnt := Cnt + 1;
        end;
        Num1 := Num1 div 2;
      until Num1 = 0;
      if Cnt <> 0 then begin
        Mult := Mult * Num2;
        IsFound := True;
      end;
    end;
    Close(F); (*Закрываем файл.*)
 
    if IsFound then
      Writeln('Произведение чисел, которые в двоичном представлении содержат неравное'
        + ' количество нулей и единиц, равно: ', Mult
      )
    else
      Writeln('Не найдено ни одного числа, которое бы в двоичном представлении содержало неравное'
        + ' количество нулей и единиц'
      )
    ;
 
    Writeln('Повторить - Enter. Выход - любой символ + Enter.');
    Readln(StrTmp);
  until StrTmp <> '';
end.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.03.2010, 20:40

Найти сумму тех чисел, которые имеют остаток от деления на некоторое число m, равный 0
помогите плиз Дано n вещественных чисел. Найти сумму тех из них, которые имеют остаток от...

Количество единиц в двоичном представлении числа N
Определить, количество единиц в двоичном представлении числа N

Среди натуральных чисел, не превышающих n, найти те, которые в двоичной системе имеют больше половины единиц
среди натуральных чисел,которые не превышают заданного n ,найти такие,которые в двоичной системе...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru