Функции,вывод значений - 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)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д