Задачки на двумерный массив
1) Задан массив чисел D (N). Определить количество K положительных элементов массива и упорядочить в порядке возрастания последние K элементов массива. В случае невозможности сделать это, выдать сообщение.
2)Составить алгоритм и программу решения задачи. На плоскости размещены точки на расстоянии С1, С2, ..., С15 от центра кругового кольца с внутренним радиусом R1 = 0.5 и внешним R2 = 2.75. Определить количество точек, размещенными внутри кольца, и среднее арифметическое их расстояния от центра. Результаты вывести на печать. Элементы массива С (15) задать самостоятельно. 3)Задан двумерный массив Q (C, S). Найти среднее геометрическое всех элементов. Если это сделать невозможно, выдать сообщение о причине. Народ помогите пожалуйста сделать 3 задачи, а то учитель задал нам на практику и нифига не объяснил, а сдавать надо. :help: |
1)
<html>
<head>
<title></title>
<script type='text/javascript'>
var D = new Array();
var dopArray = new Array();
for (var b = 0, i = 0, l = 100; i < l; i++){
D[i] = Math.round(Math.random() * 100);
k = Math.round(Math.random());
if (k == 1 || D[i] == 0){
D[i] = -D[i];
}
else{
dopArray[b] = D[i];
b++;
i--;
l--;
}
}
if (dopArray.length == 0){
alert('Положительных чисел нет.');
}
else{
dopArray.sort(
function (a, b){
return a-b;
}
);
for (k = 0; k < dopArray.length; k++){
D.push(dopArray[k]);
}
}
document.open();
document.write('<b>');
for (i = 0; i < 100; i++){
document.write(D[i] + ' ');
if (i % 10 == 0 && i != 0) document.write('<br />');
}
document.write('</b>');
document.close();
</script>
</head>
<body>
</body>
</html>
|
2. Точка входит в кольцо, если расстояние от начала координат до неё меньше или равно большему радиусу, и больше или равно меньшему радиусу.
<!doctype html>
<html>
<head><title></title>
<script>
var C = [
[1.43, 3.47],
[1.45, 0.88],
[1.68, 0.76],
[0.64, 3.97],
[4.95, 2.48],
[2.41, 0.45],
[4.08, 4.33],
[2.97, 2],
[2.94, 1.1],
[0.28, 1.28],
[1.82, 1.5],
[1.63, 1.21],
[1.06, 0.03],
[3.28, 1.66],
[3.66, 2.52]
];
var R1 = 0.5;
var R2 = 2.75;
var amount = 0;
var average = 0;
for (var i = 0, b = C.length, length; i < b; i++) {
length = Math.sqrt(Math.pow(C[i][0], 2) + Math.pow(C[i][1], 2));
if (length >= R1 && length <= R2) {
amount += 1;
average += length;
}
}
average /= amount;
average = average.toFixed(2);
document.write("Точек в кольце : " + amount + ". Среднее арифметическое расстояния от центра: " + average);
</script>
</head>
<body>
</body>
</html>
3.
<!doctype html>
<html>
<head><title></title>
<script>
var Q = [];
var C = 7;
var S = 9;
var product = 1;
var G;
var num = 0;
for (var m = 0, n; m < C; m++) {
Q[m] = [];
for(n = 0; n < S; n++) {
Q[m][n] = 1 + 1e2 * Math.random().toFixed(2); // типа ввели.
num += 1;
product *= Q[m][n];
}
}
if (product < 0 && num % 2 === 0) {
document.write("Среднее геометрическое не может быть найдено.");
} else {
G = Math.pow(product, 1 / num);
G = +G.toFixed(2);
document.write("Среднее геометрическое матрицы : " + G);
}
</script>
</head>
<body>
</body>
</html>
PS не верю, что это было так сложно сделать. PSS насчёт третьей. СГ не может быть найдено, если из произведения элементов матрицы нельзя извлечь корень. это случается при отрицательном произведении и чётном количестве элементов (ибо квадратный корень из минус одного не может быть нормально высчитан, а с комплексными числами в задаче дел не имеется) |
| Часовой пояс GMT +3, время: 22:40. |