C, PHP, VB, .NET

Дневникът на Филип Петров


* Допълнителни задачи към упражнение №1

Публикувано на 14 октомври 2008 в раздел С/С++.

Задача 1.  Компютърът си “намисля” едно число в даден интервал. От потребителят се изисква да “познае намисленото” число. За да бъде сходяща играта, всеки път се намалява интервала, в който трябва да се намира намисленото число (компютърът ще „казва“ дали числото е по-голямо или по-малко от предположеното). Накрая се разпечатва оригинала и броя пъти, необходими за познаването му.

* Произволно число „randomNumber“ в интервала [0, 100] може да зададете по следния начин:

srand( (unsigned) time (NULL) );
int randomNumber = (int) ( 101.0 * (double) rand() / ( (double) RAND_MAX+1.0) );

Функциите srand() и rand() се намират в библиотеката stdlib.h, а time() в time.h:
srand() – инициализира генератор на случайни числа
rand() – генерира случайно число
time() – връща текущото време в милисекунди

Записите (int) и (double) в израза означават, че „насилствено“ преобразуваме типовете данни в желания от нас.

Задача 2. Запълнете масив от 1000 елемента с произволни цели числа. Да се намери:
a) Минималният нечетен и четен елементи на масива;
б) Максималният нечетен и четен елементи на масива и техните индекси;
в) Средното аритметично на положителните четни и отрицателните нечетни елементи на масива;
г) Площадката с минимална дължина. Площадка наричаме непрекъсната последователност от равни по стойност числа. Всяка площадка се характеризира със стойност, начало (начален индекс) и дължина (брой на повторенията);

Сортирайте масива в нарастващ ред.

Задача 3. Дадена е квадратна матрица от 10х10 елемента, реални числа. Намерете:
а) Минималните елементи под и над главният диагонал;
б) Максималните елементи под и над второстепенният диагонал и техните индекси;
в) Средното аритметично на положителните нечетни и отрицателните четни елементи на матрицата;
г) Сумите по редове и колони и да се запишат в едномерни масиви;
д) Да се определят сумите по диагонали, успоредни на главния и самият той;<–>

 



Добави коментар

Адресът на електронната поща няма да се публикува


*