Функции,вывод значений - C (СИ)
Формулировка задачи:
Здравствуйте!Помогите,пожалуйста,сделать так,чтобы конечный результат(разницу(razn)) выводился не в функции,а в основной программе,как в примере(скрин)
Листинг программы
- #include "stdafx.h"
- #include <locale.h>
- #include <conio.h>
- #include <stdio.h>
- #include <math.h>
- #define N 3 //размер массива
- void raznica(int *x, int n, char name)
- {
- int pol = 0;
- int otr = 0;
- int razn;
- for (int i = 0; i<n; i++)
- {
- if (x[i] > 0 ) {pol += x[i];}
- else {otr += x[i];}
- }
- razn = (abs(pol))-(abs(otr));
- printf("Сумма положительных элементов %c: %d\n", name, pol );
- printf("Сумма отрицательных элементов %c: %d\n", name, otr );
- printf("Разница %d\n",abs(razn));
- }
- int _tmain(int argc, _TCHAR* argv[])
- {
- setlocale(LC_ALL,"Russian");
- printf("Найдите разницу между абсолютным значениям суммы положительных элементов и абсолютным значением суммы отрицательных элеметов векторов A,B,C");
- int A[N]={15,16,17},
- B[N]={1,2,3},
- C[N]={21,22,23};
- raznica (A, N, 'A');
- raznica (B, N, 'B');
- raznica (C, N, 'C');
- _getch();
- return 0;
- }
Решение задачи: «Функции,вывод значений»
textual
Листинг программы
- #include <locale.h>
- #include <conio.h>
- #include <stdio.h>
- #include <math.h>
- #define N 3 //размер массива
- int raznica(int *x, int n, char name) // вот тут заменил
- {
- int pol = 0;
- int otr = 0;
- int razn;
- for (int i = 0; i<n; i++)
- {
- if (x[i] > 0) { pol += x[i]; }
- else { otr += x[i]; }
- }
- razn = (abs(pol)) - (abs(otr));
- printf("Сумма положительных элементов %c: %d\n", name, pol);
- printf("Сумма отрицательных элементов %c: %d\n", name, otr);
- return abs(razn); // вот тут заменил
- }
- int main(int argc, char* argv[])
- {
- setlocale(LC_ALL, "Russian");
- printf("Найдите разницу между абсолютным значениям суммы положительных элементов и абсолютным значением суммы отрицательных элеметов векторов A,B,C\n");
- int A[N] = { 15, 16, 17 },
- B[N] = { 1, 2, 3 },
- C[N] = { 21, 22, 23 };
- printf("Разница %d\n", raznica(A, N, 'A')); //
- printf("Разница %d\n", raznica(B, N, 'B')); // и вот этот блок подправил
- printf("Разница %d\n", raznica(C, N, 'C')); //
- _getch();
- return 0;
- }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Определяем размер массива (константа N)
- Создаем функцию для вычисления разницы между суммой положительных и отрицательных элементов массива (raznica)
- В функции main, устанавливаем русскую локаль (setlocale)
- Выводим сообщение с описанием задачи
- Определяем массивы A, B, C (присваиваем значения элементам)
- Вызываем функцию raznica для каждого из массивов (с разными именами)
- Выводим результат выполнения функции
- Ждем нажатия клавиши (getch)
- Завершаем программу (return 0)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д