Вопрос задан 02.05.2019 в 01:31. Предмет Информатика. Спрашивает Гильманова Алена.

Написать на языке pascal. Дан массив с1,с2....с15 состоящий из нулей и единиц. Подсчитать

количество 0,количество 1, и количество нулей до первой единицы
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Анохин Макс.

var c:array[1..15]of byte;

i,s1,s2,s3:integer; k:boolean;

begin

for i:=1 to 15 do readln(c[i]);

for i:=1 to 15 do begin

if c[i]=0 then inc(s1) else inc(s2);

if c[i]<>0 then k:=true;

if k=false then inc(s3);

end;

writeln(s1,' ',s2,' ',s3);

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Задача

Дан массив `с1, с2, ..., с15`, состоящий из нулей и единиц. Необходимо подсчитать количество нулей, количество единиц и количество нулей до первой единицы.

Решение на языке Pascal

```pascal program CountZerosAndOnes;

var arr: array[1..15] of Integer; i, countZeros, countOnes, countZerosBeforeOne: Integer;

begin countZeros := 0; countOnes := 0; countZerosBeforeOne := 0;

// Заполнение массива с1, с2, ..., с15 for i := 1 to 15 do begin // Введите значения элементов массива с клавиатуры или используйте генерацию случайных чисел // Пример: ReadLn(arr[i]); end;

// Подсчет количества нулей, единиц и нулей до первой единицы for i := 1 to 15 do begin if arr[i] = 0 then begin countZeros := countZeros + 1;

if countOnes = 0 then countZerosBeforeOne := countZerosBeforeOne + 1; end else if arr[i] = 1 then begin countOnes := countOnes + 1; end; end;

// Вывод результатов WriteLn('Количество нулей: ', countZeros); WriteLn('Количество единиц: ', countOnes); WriteLn('Количество нулей до первой единицы: ', countZerosBeforeOne); end. ```

Объяснение решения

1. Мы объявляем переменные `arr` для хранения элементов массива, `countZeros` для подсчета количества нулей, `countOnes` для подсчета количества единиц и `countZerosBeforeOne` для подсчета количества нулей до первой единицы.

2. Заполняем массив `arr` значениями с клавиатуры или используем генерацию случайных чисел.

3. Используя цикл `for`, мы проходим по каждому элементу массива и проверяем его значение. Если значение равно 0, увеличиваем счетчик `countZeros` и, если до этого не было единиц, увеличиваем счетчик `countZerosBeforeOne`. Если значение равно 1, увеличиваем счетчик `countOnes`.

4. Выводим результаты подсчета на экран.

Пример использования

Предположим, что вводимые значения массива `arr` следующие: 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0.

Вывод программы будет следующим: ``` Количество нулей: 8 Количество единиц: 7 Количество нулей до первой единицы: 2 ```

Примечание: В приведенном решении предполагается, что значения массива `arr` вводятся с клавиатуры или генерируются случайным образом. Вам нужно будет добавить соответствующий код для ввода значений или генерации случайных чисел.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос