Разработка алгоритма решения
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Алгоритм решения задачи в основном — тот же, что и в примере 1, поэтому его схему тут не приводим. Разница состоит в том, что в начале выполнения, после инициализации датчика случайных чисел, нужно получить случайное число в диапазоне 50–200 (назовем его sіze) и выделить память для массива целых чисел размером sіze. (На схеме алгоритма для примера 1 эти действия должны быть вставлены сразу же после блока 2). Перед самым выходом из программы должны освободить выделенную память (На схеме алгоритма для примера 1 — после блока 19).

Существенные отличия возникают в реализации алгоритма. Проще всего задания могло бы быть выполнено простой заменой во всех местах операции индексации на операцию адресации, имея в виду тождественность:

Ar[i]=*(Ar+i)

Это соответствовало бы букве задания, но не духу языка C. Если переходим от индексации к адресации, у нас устраняется необходимость в индексах и даже в переменных, которые их представляют. Это приводит к другому способу реализации всех циклов. Если имя массива Ar является указателем на его начало, то вместо цикла, в котором индекс і меняется от 0 до sіze, можем организовать цикл, в котором некоторый текущий указатель C r меняется от Ar до Ar+sіze. Также, когда нужно запомнить начало отрицательной последовательности, можем запоминать не индекс соответствующего элемента, а его адрес — указатель на него.

Определениепеременных программы

Переменные программы также описываем в сравнении с примером 1. Память для массива целых чисел в нашей работе не выделяется на этапе компиляции, так что достаточно объявить в программе только переменную — указатель на начало массива:

іnt *Ar;

Размерность массива определяется при выполнении программы, так что для ее сохранения нужна отдельная переменная:

іnt sіze;

Вместо переменных, которые в примере 1 являются индексами элементов массива, будем применять указатели:

іnt *Cr;

это будет указатель на текущий элемент массива при его полном переборе, и:

іnt *Іr;

в этом указателе будет сохраняться адрес начала отрицательной последовательности, а потом — при обработке последовательности — адрес текущего ее элемента.

Переменные для сохранения суммы элементов и среднего значения и количества элементов в последовательности остаются те же самые:

int av;
int nn;


Разработка текста программы

Кроме тех файлов, которые были включены в текст программы примера 1:

#include <stdio.h>
#include <time.h>
#include <stdlib.h>

включаем также файл alloc . h, в котором содержатся описания функций динамического выделения/освобождения памяти:

# include < alloc . h >

Начинаем главную функцию и объявляем в ней переменные программы по п.5.2. Кодовая часть программы начинается с инициализации датчика случайных чисел и получения случайного числа для размера массива:

randomize();
size=random(151)+50;

Функция randвозвращает число в диапазоне 0–150, прибавлением к нему 50 переводим его в диапазон 50–200. Полученный размер массива сразу выводим на экран:

printf (" size =% d \ n ", size );

Обращаемся к функции выделения памяти:

Ar=(int far *)malloc(size*sizeof(int));

Функция malloc() требует параметр - размер запрошенной памяти в байтах. Переменная sіze — это количество элементов в массиве; для задания размера памяти в байтах умножаем ее на размер одного элемента. Функция malloc() возвращает нетипизированный указатель, преобразуем его в указатель на int и записываем в переменную Ar.

Далее организуем цикл перебора массива. В отличие от примера 1 тут в одном цикле и получаем случайные числа, и выводим начальный массив на экран. Заголовок этого цикла существенно отличается от примера 1:

for ( Cr = Ar ; Cr < Ar + size ; Cr ++) {

В начальных установках цикла записываем в переменную Cr адрес начала массива, т.е. Cr показывает на элемент с индексом 0. В конце каждой итерации Cr увеличивается на 1, т.е. показывает на следующий элемент массива. Последняя итерация происходит при значении Cr=Ar+sіze–1, т.е. Cr будет показывать на последний элемент. В каждой итерации обращаемся к текущему элементу массива как *Cr, т.е. обращаемся к тому, на что показывает указатель Cr.

Далее идет заголовок цикла перебора массива, который организуется та же, как предыдущий, но в начальных установках еще присваиваем начальное значение счетчику nn.

Тело цикла в основном подобно тому, что есть в примере 1 за исключением того, что к текущему элементу массива обращаемся через указатель на него: *Cr. Там, где требуется запомнить начало отрицательной последовательности, просто сохраняем текущее значение указателя Cr в переменной-указателе I r.

Внутренний цикл, в котором обрабатывается отрицательная последовательность, существенно отличается от примера 1:

for (av/=nn; Ir<Cr; Ir++)
if (*Ir<av) *Ir=av;

Начальные установки этого цикла — только усреднение значения в av, переменная Іr уже содержит в себе указатель на первый элемент отрицательной последовательности. В конце каждой итерации Іr увеличивается на 1, т.е. показывает на следующий элемент последовательности (обращение к этому элементу — *Іr). Последняя итерация происходит при значении Іr= C r–1, поскольку C r показывает на первый положительный элемент за отрицательной последовательностью.

Остаток программы повторяет предыдущие фрагменты.

Предпоследний оператор — обращение к функции free() для освобождения памяти, которая была выделена функцией malloc(): free(Ar);

Полный текст программы приведен ниже.

/****************************************************/
/* Указателии массив ы */
/****************************************************/
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <alloc.h>
int main(void)
{
int size; /* размер массива */
int *Ar; /* указатель на началомассива */
int *Cr, *Ir; /* текущиеуказатели */
int av, nn; /* среднее значениеи количество
элементовв последовательности */
randomize(); /* инициализация rand */
size=random(151)+50;
printf("size=%d\n",size);
Ar=(int far *)malloc(size*sizeof(int)); /* выделение памяти */
/* заполнениемассиваслучайными числами
и выводначального массива */
printf("Начальный массив:\n");
for (Cr=Ar; Cr<Ar+size; Cr++)
{ *Cr=random(101)-50;
printf("%3d ",*Cr);
}
putchar('\n');
/* перебор массива */
for (nn=0, Cr=Ar; Cr<Ar+size; Cr++)
{ if (*Cr<0)
/* обработка отрицательногоэлемента */
if (!nn)
{ /* начало последовательности: запомнить
адресначала в Іr, установитьначальное
значениенакопителя суммыив счетчика элементов */
Ir=Cr; av=*Cr; nn=1;
}
else
{ av+=*Cr; nn++;
/* подсчет суммыи количестваэлементов*/
} /* конец обработки отрицательного элемента*/
else /* обработка положительного элемента */
if (nn)
{ /* еслиестьнеобработаннаяотрицательная
последовательность:
усреднениеи перебор с ограничением */
for (av/=nn; Ir<Cr; Ir++)
if (*Ir<av) *Ir=av;
nn=0; /* последовательность обработана */
} /* конецеслиесть необработанная */
} /* конец перебора массива */
if (nn) /* если не обработана последняяотрицательная последовательность */
for (av/=nn; Ir<Cr; Ir++)
if (*Ir<av) *Ir=av;
/* вывод результатов */
printf("Массив-результат:\n");
for (Cr=Ar; Cr<Ar+size; printf("%3d ",*Cr++));
putchar('\n');
free(Ar); /* освобождение памяти */
return 0;
}
































































Отладка программы

Отладку программы следует вести по тому же плану, что и в примере 1. Следует, однако, отметить, что отслеживать значения в пошаговом режиме тут несколько труднее, ибо если в примере 1 могли видеть достаточно понятные значения индексов, то тут вместо них увидим значения указателей, более сложные для понимания. Поэтому  рекомендуем больше полагаться на выявление ошибок путем анализа результатов программы.

 

 


 


Лабораторная работа №8

Работа с табличными данными вязыке С

1. Цель работы

2. Варианты заданий

3. Пример

Цель работы

Цель лабораторной работы— освоить прие алгоритмизации при организации обработки табличных данных.

Варианты заданий

Разработать программу, выводящую итоговые показатели или выборку данных из предложенных исходных таблиц. При программированиииспользовать структуры, списки, очереди.

Предусмотреть при разработке программ следующие пункты меню:

  • вводисходных данных сэкрана;
  • ввод исходных данныхиз файла (с запросомего имени);
  • редактированиетекущих данных;
  • обработка 1;
  • обработка 2;
  • вывод на экран (отдельноисходных данных и результатов в виде подменю);
  • сохранениеизменений (с запросом имени файла для сохранения);
  • конец работы.

Вовсех вариантах после текстасобственно задания в скобках перечислены названия столбцов таблицы-результата.

Вариант 1. Основные показатели развития промышленности Украины.

Вид продукции Единицы измерения 1913 1928 1940 1945
Электроэнергия млрд. кВт/г 0.5 1.3 12.4 3.1
Сода кальцинированная тыс. тонн 119 175.7 434 128.7
Минеральные удобрения тыс. тонн 36 57 1012 136
Комбайны угольные шт. 22
Тракторы тыс. шт. 269 297 1218 335

а) Производство какой продукции промышленности Украины в 1913г. было максимальным? [вид продукции, объем ее производства в 1913 году, единица измерения];

б) Производство каких видов продукции промышленности Украины в 1945г. было больше 150 тыс. т.? [вид продукции, объем ее производства в 1945г., единицы измерения.].

 

Вариант 2. Посевные площади зерновых культур (млн. га).

Культуры 1913 1928 1940 1950 1955
Рожь 28.2 24.1 23.1 23.6 19.1
Пшеница 23 27.7 40.3 38.5 60.5
Кукуруза 2.2 4.4 3.6 4.8 9.1
Ячмень 13.2 7.3 11.3 8.6 9.9
Овес 19.1 17.2 20.2 16.2 14.8
Гречиха 2.2 2.9 2 3 2.8
Просо 3.5 5,7 6 3.8 7.7

а) Какую зерновую культуру в 1913г. сеяли меньше всего? [зерновая культура, ее посевная площадь в 1913г.];

б) Посевная площадь каких зерновых культур в 1955г. превысила 10 млн. га? [зерновая культура, ее посевная площадь в 1955 г.].

 

Вариант 3. Посевные площадив (млн. га).

Культуры 1913 1928 1940 1945 1953
Зерновые 94.3 92.2 110.5 83.3 106.7
Картовель 3.1 5.7 7.7 8.1 8.3
Овощи 0.5 0.8 1.3 1.8 1.3
Кормовые 2.1 3.9 18.1 10.2 28.7

а) Под какую культуру в 1913г. использовалась максимальная посевная площадь? [культура, ее посевная площадь в 1913 г.];

б) Посевные площади каких культур в 1953 г. превысили 10 млн. га ? [наименование культуры, ее посевная площадь в 1953г.].

 

Вариант 4. Государственный бюджет идолг Англии. (млн. ф. ст.).

Год Расход, всего % военных расходов Дефицит(–) или превыщение (+) доходов Государственныйдолг
1938/39 1106 22 –163 7289
1949/50 3928 18,9 +41 25986
1955/56 5253 26,8 –141 27520
1956/57 5704 26,8 –321 27280
1958/59 5988 24,5 –182 27300

а) В каком году дефицит бюджета Англии был минимальным? [год, величина дефицита];

б) В каких годах государственный долг Англии превышал 27400 млн. ф. ст.? [год, государственный долг].

 

Вариант 5. Производствоэлектроэнергии (млрд. кВт/ч).

Страны 1937 1950 1955
Китай 6 4.3 12.3
Польша 3.6 9.4 17.8
Чехословакия 4.1 9.3 15
Венгрия 1.4 3 5.4
Румыния 1.1 2.1 4.3
Болгария 0.3 0.8 2.1

а) В какой стране в 1950г. произвели меньше всего электроэнергии? [страна, объем производства в 1950г.];

б) В каких странах производство электроэнергии в 1937г. не превысило 2 млрд. кВт/ч.? [страна, объем производства в 1937г.].

 

Вариант 6. Государственный бюджет США (млрд. долларов).

Год Всего доходов Налоговые доходы Всего расходов Военныерасходы
1938/39 5 4.8 8.9 1.1
1949/50 36.5 35.1 29.6 13
1955/56 68.2 65.2 66.5 40.6
1956/57 71 68.3 69.4 43.3
1957/58 69.1 65.9 71.9 44.1

а) В каком году в США собрали меньше всего налогов? [год, налоговые доходы];

б) В каких годах военные расходы США превышали 40 млрд. долларов? [год, военные расходы].

 

Вариант 7. Основные показатели развития промышленности Украины.

Вид продукции Единицыизмерения 1913 1928 1940 1959
Автомобили грузовые тыс. шт. 12.6
Цемент тыс. тонн 269 297 1218 7017
Кирпич млрд. шт. 0.6 0.7 1.6 6.3
Ткани х.б млн. м 4.7 2 13.8 88.2
Тканишерстяные млн. м 5.3 2 12 17.7
Сахар-песок тыс. тонн 1107 1041 1580 4103

а) Производство какого вида продукции в Украине в 1913г. было минимальным? [вид продукции, объем ее производства в 1913г., единица измерения];

б) Производство каких видов продукции в Украине в 1940г. было больше 100 единиц? [вид продукции, объем ее производства в 1940г., единица измерения].

 

Вариант 8. Добычаполезныхископаемыхв США.

Ископаемые Одиниця измерения 1937 1943 1957
Каменный уголь млн. тонн 451 503 458
Нефть млн. тонн 173 293 354
Газ млрд. м3 70 99.5 300
Железная руда млн. тонн 73 103 106
Марганец тыс. тонн 41 186 332
Медь тыс. тонн 764 990 992
Свинец тыс. тонн 422 44 306
Цинк тыс. тонн 568 675 483

а) Добыча какого полезного ископаемого в США в 1937г. была максимальной? [наименование полезного ископаемого, объем добычи в 1937 г., единица измерения];

б) Добыча какого полезного ископаемого в США в 1957г. не превысила 1 млн. тонн? [наименование полезного ископаемого, объем добычи в 1957г., единица измерения].

 

Вариант 9. Показатеи развития торговли.

Показатель 1932 1940 1950 1958
Объем рознмчного товарооборота 40.4 175.1 359.6 677
Число предприятий (тыс.) 340.2 494 511 650
Количествоработников (тыс.) 1488 2166 1967 2847
Издержкиобращения (%) 12.9 9.7 7.7 6.6

а) Какой показатель развития торговли имел минимальное значение в 1950г.? [показатель, его значение в 1950г.];

б) Какие показатели развития торговли не превысили значения 100 единиц в 1932г.? [показатель, его значение в 1932г., единица измерения].

 

Вариант 10. Производство продукцииживотноводства

Продукты Единица измерения 1913 1940 1950 1958
Мясо и сало млн. тонн 5 4.7 4.9 7.9
Молоко млн. тонн 29.4 33.6 35.3 57.8
Шерсть тыс. тонн 192 161 180 321
Яйца млрд. штук 11.9 12.2 11.7 23.5

а) Производство какого продукта животноводства в 1913г. было минимальным? [наименование продукта животноводства, объем его производства в 1913г., единица измерения];

б) Производство каких продуктов животноводства в 1958г. превысило 1 млн. тонн? [наименование продукта животноводства, объем его производства в 1958г., единица измерения].

 

Вариант 11. Охрана здоровья в (тыс.).

Республика

1940

1960

Число докторов Число коек Число докторов Число коек РСФСР 82.2 482 221.2 939.4 Украина 33.4 157.6 73.8 318 Латвия 1.7 12 5.2 23.2 Эстония 0.07 0.1 2.7 11.2

а) В какой республике значение отношения числа врачей к числу коек в 1940г. было минимальным? [республика, число врачей, число коек, отношение числа врачей к числу коек (все данные за 1940г.)];

б) В каких республиках число врачей в 1960г. было меньше 50 тыс.? [республика, число врачей].

 

Вариант 12. Структура добычи минерального топлива (в % в перерасчете на условное топливо).

Вид топлива 1955 1956 1954
Каменный и бурый уголь 68.6 62.1 32.7
Нефть 27.8 27.4 38.7
Природный газ 2.5 5.3 28.6
Торф 4.5 4.5
Горючие сланцы 0.6 0.7

а) Добыча какого топлива в 1956г. была максимальной? [вид топлива, объем его добычи в 1956г.];

б) Добыча каких видов минерального топлива в США была не меньше 35%? [вид топлива, объем его добычи в 1954 г.].

 

Вариант 13. Производство цемента (млн. т).

Страна 1937 1958
Китай 2.3 9.3
Польша 1.3 5.0
Чехословакия 1.3 4.1
Венгрия 0.3 1.3
Болгария 0.2 0.9
Румыния 5.7 33.3

а) В какой стране в 1958г. произвели больше всего цемента? [страна, объем производства цемента в 1958г.];

б) В каких странах производство цемента в 1937г. было не меньше 1 млн. тонн? [страна, объем производства в 1937г.].

 

Вариант 14. Международная торговля.

Год Оборот (млрд. $)

Индекс экспорта (1953 год = 100)

США Англия ФРГ
1953 149 100 100 100
1954 154 93 101 123
1955 170 103 113 152
1956 188 112 112 171
1957 204 114 116 196
1958 193 119 116 205

а) В каком году индекс экспорта США был минимальным? [год, индекс экспорта США];

б) В каких годах индекс экспорта ФРГ был не больше 150%? [год, индекс экспорта ФРГ].

 

Вариант 15. Поголовье продуктивногоскота (на 100 га угодий)

Види 1940 1950 1955
Крупный рогатый скот, из них Коровы 11 6 12 5 14 6
Свиньи 15 13 25
Овцы 17 17 26
Козы 2 4 3

а) Поголовье какого вида продуктивного скота в 1940г. было максимальным? [вид продуктивного скота, его поголовье в 1940г.];

б) Поголовье какого видапродуктивного скота в в 1955г. не превысило 10 (на 100 га угодий)? [вид продуктивного скота, его поголовье в 1955г.].

 

Вариант 16. Урожайность сельскохозяйственных культур в (ц/га).

Культуры 1913 1928 1940 1945 1953
Зерновые 8.1 7.9 8.6 7.9 7.8
Сахарная свекла 168 132 146 159 148
Хлопок-сырец 10.8 8.1 10.8 15.3 20.5
Льноволокно 3.3 2.4 1.7 1.3 1.3
Овощи 91 132 97 72 87

а) Урожайность какой сельскохозяйственной культуры в 1940г. была минимальной? [культура, ее урожайность в 1940г.];

б) Урожайность каких культур в 1945г. была меньше 20 ц/га? [сельскохозяйственная культура, ее урожайность в 1945г.].

 

Вариант 17. Структура внешней торговли Чехословакии (в % отстоимости).

Показатель

1948

1958

Экспорт Импорт Экспорт Импорт
Машины и оборудование 20.3 7.2 43.4 18.7
Топливо и сырье 43.5 56.5 31.1 54.7
Продовольственные товары 5.5 33.6 7.1 23.1
Остальныепотребительские товары 30.2 2.7 18.4 3.5

а) Экспорт какого вида товаров Чехословакии в 1958 г. был максимальным? [наименование товара, его экспорт в 1958г.];

б) Импорт каких видов товаров Чехословакии в 1948г. превысил 25%? [наименование товара, его импорт в 1948г.].

 

Вариант 18. Производство чугуна и стали (тыс. тонн).

Страны

Чугун

Сталь

1938 1958 1938 1958
Китай 945 13690 488 11080
Чехословакия 1675 3774 2118 5510
Польша 880 3864 1440 5631
Венгрия 335 1082 647 1627
Румыния 132 737 284 934

а) В какой стране в 1958г. произвели меньше всего чугуна? [страна, объем производства чугуна в 1958г.];

б) В каких странах производство стали в 1938г. не превысило 900 тыс. т.? [страна, объем производства стали в 1938г.].

 

Вариант 19. Производство продукциитяжелой промышленности

Вид продукции Единицаизмерения 1913 1928 1940 1958
Станки тыс. шт. 1.5 2 58.4 138
Турбины тыс. кВт 5.9 44.1 1179 6031
Экскаваторы шт. 274 10105
Цемент млн. тонн 1.5 1.8 5.7 33.1
Автомобили тыс. шт. 0.84 145.4 511
Тракторы тыс. шт. 1.3 31.6 219.7

а) Производство какой продукции тяжелой промышленности в 1928г. было минимальным? [вид продукции, объем ее производства в 1928г., единица измерения];

б) Производство каких видов продукции тяжелой промышленности в 1958г. было меньше 300 тыс. штук? [вид продукции, объем ее производства в 1958г., единицы измерения.].

 

Вариант 20. Выпуск промышленной продукции в Японии.

Вид продукции Единицыизмерения 1937 1950 1958
Медь тыс. тонн 86.7 84.7 123.7
Цинк тыс. тонн 49.2 49 143
Свинец тыс. тонн 10.3 16 41.3
Алюминий тыс. тонн 10.7 28.3 84.5
Серная кислота млн. тонн 3.5 3.2 3.8
Цемент млн. тонн 6.1 4.4 14.98

а) Производство какого вида продукции в Японии в 1950г. было минимальным? [вид продукции, объем ее производства в 1950г., единица измерения];

б) Производство каких видов продукции в Японии в 1937г. было больше 10 единиц? [вид продукции, объем ее производства в 1937г., единица измерения].

 

Вариант 21. Производствоэлектроэнергииимощностьэлектростанций

Год

Производство (млн. кВт/ч)

Потужність (тис. кВт)

Всего в т.ч. гидро Всего в т.ч. ГЭС
1913 1945 35 1098 16
1928 5007 420 1905 121
1940 48309 5113 11192 1587
1945 43257 4841 11124 1252
1955 170225 23165 37243 5996

а) В каком году производство всей электроэнергии было максимальным? [год, производство электроэнергии (всего)];

б) В каких годах мощность ГЭС превысила 1000 кВт.? [год, мощность ГЭС.].

 

Вариант 22. Удельный весстранвмировом капиталистическомэкспорте (% к итогу).

Страны 1883 1913 1929 1937 1946 1956
США 10.7 13.3 15.6 12.9 30.1 20.7
Англия 15.6 13.9 10.8 10 11.6 9.7
Франция 8.9 7.2 6 3.7 2.7 4.9
Германия 10.3 13.1 9.7 9.3 0.7 8.0
Япония 0.5 1.7 2.9 4.7 0.3 2.7

а) Удельный вес какой страны в мировом капиталистическом экспорте в 1913 г. был максимальным? [страна, ее удельный вес в 1913 г];

б) Удельный вес каких стран в мировом капиталистическом экспорте в 1956 г. не превысил 8% к итогу ? [страна, ее удельный вес в 1956 г.].

 

Вариант 23. Производство продукциитяжелой промышленности

Вид Единицыизмерения 1913 1928 1940 1958
Чугун млн. тонн 4.2 3.3 14.9 39.6
Сталь млн. тонн 4.2 4.3 18.3 54.9
Уголь млн. тонн 29.1 35.5 165 496
Нефть млн. тонн 9.2 11.6 31.1 113
Газ млрд. м3 0.02 0.33 3.39 29.9

а) Производство какого вида продукции тяжелой промышленности в 1913г. было минимальным? [продукция, объем ее производства в 1913 г., единица измерения];

б) Производство каких видов продукции в 1958 г. превысило 50 млн. т.? [продукция, объем ее производства в 1958г., единицы измерения].

 

Вариант 24. Производство продукцииэлектротехническойпромышленности

Вид продукции Единицы измерения 1928 1940 1945 1958
Генераторыи турбины тыс. кВт 75 468 265 5186
Электродвигатели мощностью свыше 100 кВт тыс. шт. 0.4 3.1 3.2 16.3
Электродвигатели мощностью до 100 кВт тыс. шт. 32.8 259.3 110.7 2215
Холодильники бытовые тыс. шт. 3.5 0.3 359

а) Производство какого вида продукции электротехнической промышленности в 1940г. было минимальным? [вид продукции, объем ее производства в 1940г., единица измерения];

б) Производство каких видов продукции электротехнической промышленности в 1945г. было меньше 10 тыс. штук? [вид продукции, объем ее производства в 1945г., единицы измерения.].

 

Вариант 25. Государственный бюджет идолг Франции (млрд. фр.)

Год Расход Дефицит Государственныйдолг
1938 82 –28 424
1950 2357 –280 4133
1955 3945 –495 5887
1956 4643 –765 5495
1957 5640 –655 7188
1958 5486 –258 8144

а) В каком году расходная часть бюджета Франции была максимальной? [год, величина расхода];

б) В каких годах дефицит бюджета Франции не превышал 500 млрд. фр.? [год, величина дефицита].

 

Вариант 26. Энергетическиемощностисельскогохозяйства (млн. л. сил).

Вид 1940 1950 1958
Трактор ы 17,6 22 42,6
Мотор ы комбайнов 5,8 8 22,2
Автомобили 11,9 21,3 58
Электрооборудование 1,6 3,4 9,7

а) Какой вид сельскохозяйственной техники в 1940г. был наиболее мощным? [вид сельскохозяйственной техники, его мощность в 1940г.];

б) Энергетическая мощность каких видов сельскохозяйственной техники в 1958г. не превышала 30 млн. л. сил? [вид сельскохозяйственной техники, его мощность в 1958г.].

 

Вариант 27. Добыча минерального топлива

Года Уголь (млн. т) Нефть (млн. т) Газ (млрд. м3) Сланцы (тыс. т)
1913 29.1 9.2
1928 35.5 11.6 0.3 0.6
1940 165 31.1 3.2 1662.9
1950 261 37 5.6 4710

а) В каком году добыли меньше всего угля ? [год, объем добычи угля];

б) В каких годах добыли не менее 20 млн. т. нефти? [год, объем добычи нефти].

 

Вариант 28. Основные показатели развития промышленности Украины.

Вид продукции Единицыизмерения 1913 1928 1940 1959
Чугун млн. тонн 2.9 2.4 9.6 22.3
Сталь млн. тонн 2.4 2.4 8.9 24
Прокат млн. тонн 2.1 2 6.5 19.6
Железная руда млн.тонн 6.9 4.7 20.2 53.5
Кокс млн. тонн 4.4 4 15.7 29.2
Уголь млн. тонн 22.8 24.8 83.8 167.7
Нафта тыс. тонн 1047 353 1600
Газ млрд. м3 0.5 11.6

а) Производство какого вида продукции промышленности Украины в 1928г. было максимальным? [продукция, объем ее производства в 1928г., единица измерения];

б) Производство каких видов продукции Украины в 1940г. не превысило 25 млн. т.? [продукция, объем ее производства в 1940г., единицы измерения].

 

Вариант 29. Хлопковоепроизводство в России.

Показатель 1913 1928 1940 1958
Посевная площадь (млн. га) 0.69 0.97 2.08 2.15
Заготовкии закупки (млн. т) 0.68 1.03 2.51 4.4
Сбор з 1 га (ц) 13 6.8 12.1 20.4

а) В каком году сбор хлопка с 1 га в России был минимальным [год, сбор с 1 га];

б) В каких годах посевная площадь хлопка в России превысила 1 млн. га? [год, посевная площадь].

 

Вариант 30. Производство сельскохозяйственных продуктов.

Продукция

Южная Америка

Австралия

(млн.т.) 1953 1957 1953 1957
Виноград 2.6 2.7 0.5 0.5
Мясо и сало 5.4 6.3 1.9 2.1
Молоко 13.1 15 11.1 11.5
Шерсть 0.3 0.3 0.8 0.9
Яйца (млрд. шт.) 9.1 11.1 3 3

а) Производство какого сельскохозяйственного продукта в 1957г. в Австралии было максимальным? [сельскохозяйственный продукт, объем производства в 1957г.];

б) Производство какого сельскохозяйственного продукта в 1953г. в Южной Америке превысило 5 млн. т.? [сельскохозяйственный продукт, объем производства в 1953 г., единица измерения].

 

Вариант 31. Основные показаеи развития промишленности России.

Вид продукции Единицыизмерения 1913 1928 1940 1945
Электроэнергия млрд. кВт/г 1.4 3.2 12.4 7.1
Минеральныеудобрения тис. тонн 80 135.7 434 128.7
Автомобилиі тис. шт. 80 150 800 200
Комбайны угольные шт. 200 400 500 120
Тракторы тыс. шт. 369 497 2218 335

а) Производствокакой продукции промышленности России в 1928г. было минимальным? [вид продукции, объемеепроизводствав 1928 году, единицыизмерения];

б) Производствокаких видов продукциипромышленности России в 1945г. было больше чем 150 тыс. шт.? [вид продукции, объемеепроизводства в 1945г., единицыизмерения].

 

Вариант 32. Посевные площадив (млн. га).

Культуры 1913 1928 1940 1945 1953
Зерновые 94.3 92.2 110.5 83.3 106.7
Кормовые 3.1 5.7 7.7 8.1 8.3
Овощи 1.5 2.8 3.3 1.8 1.3
Картофель 2.1 3.9 18.1 10.2 18.7

а) Под какую культуру в 1928г. использовалась максимальная посевная площадь? [культура, ее посевная площадь в 1928 г.];

б) Посевные площадикаких культур в 1945г. превысили 10 млн. га? [наименование культуры, ее посевная площадь в 1945г.].

 

Вариант 33. Государственный бюджет Франции (млрд. фр).

Рік Всего доходов Налоговые доходы Всего расходов Военныерасходы
1938/39 5 4.8 8.9 2.1
1949/50 26.5 18.1 19.6 10
1955/56 68.2 55.2 56.5 30.6
1956/57 71 63.3 69.4 33.3
1957/58 69.1 62.9 51.9 28.1

а) Вкаком году во Франциисобрали меньше всегоналогов? [год, налоговые доходы];

б) Вкаких годах военныерасходы Франции не превисили 20 млрд. фр.? [год, военные расходы].

 

Вариант 34. Показатели развития торговли.

Показатель 1932 1940 1950 1958
Объем розничного товарооборота 50.4 185.1 459.6 577
Число предприятий (тыс.) 240.2 694 611 850
КОличествоработников (тыс.) 1588 2266 1867 2947
Издержкиобращения (%) 18.9 8.7 9.7 8.6

а) Какой показаель развития торговлиимел максимальное значение в 1940г.? [показатель, его значение в 1940г.];

б) Какие показатели развития торговли превысили значение 100 единиц в 1932г.? [показатель, его значение в 1932г., единицаизмерения].

 

Вариант 35. Структура добычи минерального топлива (в % в перерасчете на условноетопливо).

Вид топлива 1954 1956 1958
Камянный уголь 64.6 52.1 31.9
Нефть 29.8 37.4 38.4
Природный газ 4.5 5.3 23.3
Торф 4.5 4.5 5.6
Горючие сланцы 0.6 0.7 0.8

а) Добычакакого топлива в 1954г. была максимальной? [вид топлива, объемг его добычи в 1954г.];

б) Добычакаких видов минерального топлива в 1958г. была меншечем 30%? [вид топлива, объемего добычи в 1958 г.].

 

Вариант 36. Поголовье продуктивногоскота (на 100 га угодий)

Виды 1940 1950 1955
Коровы 9 10 8
Свиньи 14 12 23
Овцы 13 11 20
Козы 2 4 3

а) Поголовьекакого вида продуктивногоскотав 1940г. было минимальным? [вид продуктивногоскота, его поголовье в 1940г.];

б) Поголовьекакого вида продуктивногоскотав 1950г. превысило 10 (на 100 га угодий)? [вид продуктивногоскота, его поголовье в 1950г.].

 

Вариант 37. Производство чугуна и стали (тыс. тонн).

Страны

Чугун

Сталь

1938 1958 1938 1958
Россия 1945 13690 2088 11080
Украина 1575 4774 1118 9510
Польша 980 2864 1240 6631
Венгрия 435 982 747 1527
Румыния 232 837 384 1034

а) Вкакой стране в 1958г. произвелибольше всего чугуна? [страна, объемпроизводства чугуна в 1958г.];

б) Вкаких странах производство стали в 1938г. превысило 900 тыс. т.? [страна, объемпроизводства стали в 1938г.].

 

Вариант 38. Производствоэлектроэнергииимощность электростанций

Год

Производство (млн. кВт/ч)

Мощность (тыс. кВт)

Всего в т.ч. гидро всего в т.ч. ГЭС
1913 2945 45 1198 17
1928 5007 430 2905 131
1940 47309 5213 10192 1887
1945 42257 4941 13124 1452
1955 172225 24565 38243 7996

а) Вкаком годупроизводство всейэлектроэнергии было минимальным? [год, производствоэлектроэнергии (всего)];

б) Вкаких годах мощность ГЭС не превысила 1000 тис. кВт.? [год, мощность ГЭС.].

 

 

Вариант 39. Производство продукцииэлектротехнической промышленности

Вид продукции Единицыизмерения 1928 1940 1945 1958
Генераторыи турбины тыс. кВт 75 468 265 5186
Электродвигателимощностью свыше 100 кВт тыс. шт. 0.4 3.1 3.2 16.3
Электродвигателимощностью до 100 кВт тыс. шт. 32.8 259.3 110.7 2215
Холодильники бытовые тыс. шт. 3.5 0.3 359

а) Производствокакого вида продукцииэлектротехнической промышленности в 1928г. было максимальным? [вид продукции, объемеепроизводства в 1928г., единицаизмерения];

б) Производствокаких видов продукцииэлектротехнической промышленностив 1958г. было больше чем 10 тыс. штук? [вид продукции, объемеепроизводства в 1958г., единицыизмерения].

 

Вариант 40. Добыча минерального топлива

Года Уголь (млн. т) Нефть (млн. т) Газ (млрд. м3) Сланцы (тыс. т)
1928 39.1 9.2 0,2 0,4
1930 45.5 13.6 0.5 0.3
1940 175 31.1 3.3 1562
1950 281 38 6.6 4710

а) Вкаком году добыли меньше всего угля? [год, объем добычи угля];

б) Вкаких годах добыли больше чем 20 млн. т. нефти? [год, объем добычи нефти].

3. Пример

Дана информация о странах мира в виде: название, столица, площадь (млн. кв. км) и численность населения (млн. чел.). Сформировать список тех стран, плотность населения которых превышает заданную. Об этих странах сообщить их название, столицу и плотность населения. Найти страну с минимальной площадью территории.

/* ====== РАБОТА С ТАБЛИЧНЫМИ ДАННЫМИ ========================== */
#include <stdio.h>
#include <stdlib.h>
#define N 100
#define LN 20
#define LC 15
#define LG_I 66
#define LG_V 51
main ()
{ struct country /* структурный тип для исходной таблицы: */
{ char name [LN+1]; /* название */
char capit [LC+1]; /* столица */
float area; /* площадь */
float chisl; /* численность */
};
/* ======= ИСХОДНЫЕ ДАННЫЕ====================================== */
int n; /* реальное количество стран */
struct country c[N]; /* исходная таблица */
float pl_z; /* заданнаяплотность населения */
/* ============ РЕЗУЛЬТАТЫ ===================================== */
struct
{ char name [LN+1]; /* название */
char capit [LC+1]; /* столица */
float pl; /* плотность населения */
} c_r[N]; /* таблица-результат */
int p; /* реальна количество країн у таблиці-результаті */
/* ========= ПРОМЕЖУТОЧНЫЕ ДАННЫЕ =============================== */
int i; /* индекс элемента таблицы */
float pl; /* плотность населения для і-й страны */
float ar_min; /* значение текущего минимума */
int n_min; /* номер элемента таблицы, соответствующего
текущему минимуму */
int pr; /* признак корректности введенных данных */
float r; /* змінна для введення даних із крапкою, що плаває */
/* відкреслювання при виводі вхідної таблиці: */
char sg_icx[LG_I+1]=
"-----------------------------------------------------------------";
/* відкреслювання при виводі таблиці-результату: */
char sg_vix[LG_V+1]=
"-------------------------------------------------";
/* ========= ПЕРЕВІРКА ОБМЕЖЕНЬ ================================ */
/* --------------- для кількості країн у таблиці --------------- */
do
{ printf ("Уведіть количество країн (не більш, ніж %d):", N);
scanf("%d",&n);
if (n<0 || n>N)
{ pr=1;
printf("Ви помилилися!\n");
}
else pr=0;
}
while(pr);
/* --------------- для элементов таблиці даних ----------------- */
printf("Уведіть дані про страны \n");
printf("%s\n", sg_icx);
printf("!NN! назва страны ! столиця !");
printf (" площа ! чисельність !\ n ");
printf ("% s \ n ", sg _ icx );
do
{ for ( i =0; i < n ; i ++)
{ printf ("! %d ", i+1);
scanf("%s", c[i].name);
scanf("%s", c[i].capit);
scanf("%f", &r); c[i].area=r;
scanf("%f", &r); c[i].chisl=r;
if (c[i].area<0 || c[i].chisl<0)
{ pr=1;
printf(" Ви помилилися ! Повторіть введення \n");
i--;
}
else pr=0;
}
}
while(pr);
printf("%s\n", sg_icx);
/* --------------- для заданої щільності населення ------------- */
do
{ printf(" Уведіть щільність населення :");
scanf("%f",&pl_z);
if(pl_z<0)
{ pr=1;
printf(" Ви помилилися ! Повторіть введення \n");
}
else pr=0;
}
while(pr);
/* ======== ЗДІЙСНЕННАЧАСТИНААЛГОРИТМУ ====================== */
n_min = -1;
ar_min = 1.0e6; /* площа , щоперевищуєусівідомі */
p = -1;
for(i=0; i<n; i++)
{ /* Країнизщільністю , щоперевищуєзадану */
pl=c[i].chisl/c[i].area;
if(pl>pl_z)
{p++;
strcpy(c_r[p].name,c[i].name);
strcpy(c_r[p].capit,c[i].capit);
c_r[p].pl=pl;
}
/* ======== Пошукстранызмінімальноюплощею ========= */
if (c[i].area<ar_min)
{ ar_min= c[i].area;
n_min=i;
}
}
/*============ ВИВІДРЕЗУЛЬТАТІВ ================================ */
/* Странызщільністюнаселення , щоперевищуєзадану */
if (p>-1)
{ printf(" Списоккраїнізплощеюнаселення , щоперевищує %f\n", pl_z);
printf("%s\n", sg_vix);
printf("!NN! назвастраны ! столиця ! щільність !\n ");
printf("%s\n",sg_vix);
for(i=0;i<=p;i++)
printf("!%2d!%-20s!%-15s!% 7.2f !\n", i+1,c_r[i].name,
c_r[i].capit, c_r[i].pl);
printf("%s\n",sg_vix);
}
else
printf(" Країнізщільністюнаселення , щоперевищує %f не
знайдено .\n", pl_z);
printf(" Країназмінімальноюплощеюнаселення : %s",c[n_min].name);
}

 


























































































































Дата: 2018-12-21, просмотров: 298.