кодесурса
«C

Упражнения на C: Верните true, если массив может быть разбит в таком положении, что сумма левой части расщепления равна сумме правой стороны

script1adsense2code
script1adsense3code

C Array: Упражнение-99 с раствором

Напишите программу на C, чтобы она возвращала true, если массив может быть разбит в таком положении, что сумма левой части расщепления равна сумме правой стороны.

Пример решения:

Код C:

#include<stdio.h> 
# include <stdbool.h>
bool canBalance(int arr1[],int n) 
{
  int l=n;
  for(int i = 0; i < l; i++) 
  {
      int rhs = 0, lhs = 0;
      for(int k = 0; k < l; k++)
      {
          if(k > i)
          {
              lhs += arr1[k];
              }
              else 
              {
                  rhs += arr1[k];
                }
        }
                  
    if(rhs == lhs) 
	{
      return true;
    }
  }
  return false;
}
int main()
{
     int arr1[] ={1, 3, 3, 8, 4, 3, 2, 3, 3};
     int arr_size = sizeof(arr1)/sizeof(arr1[0]);
     int i;
     bool bl;
 //------------- print original array ------------------	
	printf("The given array is :  ");
	for(i = 0; i < arr_size; i++)
	{
	printf("%d  ", arr1[i]);
    } 
	printf("\n");
//------------------------------------------------------ 
        bl=canBalance(arr1, arr_size);
        if (bl==true)
            printf("The array can be split in a position where the sum of both side are equal. ");        
     else
         printf("The array can not be split at any position where the sum of both side are equal. ");
 
   return 0;
}

Пример вывода:

 Данный массив: 1 3 3 8 4 3 2 3 3  
Массив можно разбить на позицию, в которой сумма обеих сторон равна. 

Блок - схема:

«Блок-схема:

Редактор кода программирования C:

Улучшите этот пример решения и опубликуйте свой код через Disqus.

Предыдущий: Напишите программу на C, которая будет возвращать самый большой диапазон, найденный в крайнем левом и крайнем правом появлениях одного и того же значения (значения включительно) в данном массиве.
Далее: Напишите программу на C, которая будет возвращать количество скоплений (ряд из 2 или более смежных элементов с одинаковым значением) в данном массиве.

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code