Упражнения на C: Проверьте заданный массив целых чисел и верните true, если данный массив содержит две 5 рядом друг с другом или две 5, разделенные одним элементом
Базовый алгоритм C-программирования: Упражнение 61 с решением
Напишите программу на C, чтобы проверить заданный массив целых чисел и вернуть true, если данный массив содержит две 5 рядом друг с другом или две 5, разделенные одним элементом.
Код C:
#include <stdio.h>
#include <stdlib.h>
int main(void){
int arr_size;
int array1[] = {1, 5, 5, 5, 5};
arr_size = sizeof(array1)/sizeof(array1[0]);
printf("%d",test(array1, arr_size));
int array2[] = { 2, 7, 8, 10};
arr_size = sizeof(array2)/sizeof(array2[0]);
printf("\n%d",test(array2, arr_size));
int array3[] = {3, 3, 3, 5, 7, 5};
arr_size = sizeof(array3)/sizeof(array3[0]);
printf("\n%d",test(array3, arr_size));
}
int test(int numbers[], int arr_size)
{
int len = arr_size;
for (int i = 0; i < len - 1; i++)
{
if (numbers[i] ==5 && numbers[i + 1] == 5) return 1;
if (i + 2 < len && numbers[i] == 5 && numbers[i + 2] == 5) return 1;
}
return 0;
}
Пример вывода:
1 0 1
Иллюстрированная презентация:
Блок - схема:
Решение
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите программу на C, чтобы проверить, содержит ли массив целых чисел 3 рядом с 3 или 5 рядом с 5 или обоими.
Далее: Напишите программу на C для проверки заданного массива целых чисел и верните true, если есть 3 с 5 где-то позже в данном массиве.
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code