|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.05.2011, 11:31 | #1 |
Пользователь
Регистрация: 14.11.2010
Сообщений: 26
|
задачть в двух массивах
здраствуйте, я никак не пойму задачу. подскажите как решить.(задача на языке си)
Исходные данные. урожай в каждом районе и засеваемые площади - задать в двух массивах. для определения урожайности по каждому району найти частное от деления элементов массивов, содержащих исходные данные. для определения средней урожайности по области найти частное от деления сумм элементов массивов исходных данных. спасибо. |
24.05.2011, 12:35 | #2 |
Software Developer
Участник клуба
Регистрация: 01.03.2011
Сообщений: 1,098
|
Решение задачи практически дано в ее условии.
Создаешь два массива, в первом -- засеваемые площади, во втором -- соответствующий урожай. Урожайность по районам будет равна частному от деления элементов массива с одинаковыми индексами, для урожайности по области надо найти суммы элементов каждого массива и разделить одну на другую.
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв. Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062 |
24.05.2011, 14:33 | #3 |
Пользователь
Регистрация: 14.11.2010
Сообщений: 26
|
#include <stdio.h>
#include <stdlib.h> #include <time.h> //----------------------------------------------// void SetValues(unsigned *arr, unsigned count, unsigned min, unsigned max) { srand(time(NULL)); while (count--) { arr[count] = rand()%(max-min) + min; } } //----------------------------------------------// void Print(unsigned *arr, unsigned count) { while (count--) { printf("%4d", arr[count]); } printf("\n"); } //----------------------------------------------// void CalculationYield(unsigned *crop, unsigned *area, unsigned *yield, unsigned count) { while (count--) { yield[count] = area[count] / crop[count]; } } //----------------------------------------------// unsigned AllYield(unsigned *crop, unsigned *area, unsigned count) { unsigned sumCrop = 0; unsigned sumArea = 0; while (count--) { sumCrop += crop[count]; sumArea += area[count]; } return sumArea / sumCrop; } //----------------------------------------------// #define SIZE 10 int main() { unsigned crop[SIZE], area[SIZE], yield[SIZE]; SetValues(crop, SIZE, 1, 15); SetValues(area, SIZE, 30, 40); printf("crop\n"); Print(crop, SIZE); printf("area\n"); Print(area, SIZE); CalculationYield(crop, area, yield, SIZE); printf("yield\n"); Print(yield, SIZE); printf("middle = %d\n", AllYield(crop, area, SIZE)); return 0; } почему то не компелируется. и вообще не вычисляет ничего. исправте пожалуйста код. не могу понять. спасибо. |
24.05.2011, 14:55 | #4 |
Software Developer
Участник клуба
Регистрация: 01.03.2011
Сообщений: 1,098
|
У меня все компилируется и вычисляется.
Единственное -- урожайность урезается до целого числа. Но хоть это, надеюсь, сможешь сам исправить... ЗЫ пользуйся тэгами CODE -- /CODE (кнопка с решеткой)
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв. Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062 |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
найти пересечение двух прямоугольников заданных координатами двух углов | Этотак | Помощь студентам | 0 | 11.05.2011 23:55 |
Ошибки в массивах С++ | Pina_Kolada | Помощь студентам | 4 | 18.03.2011 18:07 |
функции в массивах | udwik | Общие вопросы C/C++ | 1 | 25.01.2010 22:52 |
Вопрос о массивах | makSum | Помощь студентам | 3 | 07.06.2008 21:58 |