половцы
эсперементальная проверка
12.а
13а
борьба с космополитами
<p>1. Системные программы</p>
<ul>
<li>Базовое системное программное обеспечение</li>
</ul>
<ol style="list-style-type: upper-roman;">
<li>Операционные системы</li>
<li>Операционные системы</li>
</ol>
<ul>
<li>Сервисное системное программное обеспечение</li>
</ul>
<ol style="list-style-type: upper-roman;">
<li>Программы проверки поверхност. диска</li>
<li>Дефрагментация диска</li>
<li>Антивирусные программы</li>
</ol>
<p>2. Прикладные программы</p>
<ul style="list-style-type: square;">
<li>Текстовые редакторы</li>
<li>Графические редакторы</li>
<li>Электронные таблицы</li>
<li>Системы управления базами данных</li>
</ul>
<p>3. Системы программирования</p>
<ul style="list-style-type: circle;">
<li>Turbo Pascal</li>
<li>Free Pascal</li>
<li>Visual Basics</li>
<li>C++</li>
</ul>
Объяснение:
доктайп и тэги html, head и body добавлять не стал, там и сам сможешь
#include <iostream>
#include <time.h> // для time()
//функция сортировки
void sort(double** _base_mas, double** _copy_mas, int n, int m)
{
// копируем из базового в под запись
for (long long jjj = 0; jjj < long long(n) * m; jjj++)
*(*(_copy_mas + jjj / n) + jjj % n) = *(*(_base_mas + jjj / n) + jjj % n);
// сортируем
for (long long kkk = 0; kkk < long long(n) * m; kkk++)
for (long long jjj = 1; jjj < long long(n) * m; jjj++) {
double& first = *(*(_copy_mas + (jjj - 1) / n) + (jjj - 1) % n);
double& second = *(*(_copy_mas + jjj / n) + jjj % n);
if (first < second) std::swap(first, second);
}
// конструкция избежать переполнение на байтовом уровне (из 4 в 8)
}
int main() {
srand(time(0));
int n;
int m;
std::cout << "Enter length: ";
std::cin >> n;
std::cout << "Enter height: ";
std::cin >> m;
double** base_mas = new double* [m]; // исходный массив
double** copy_mas = new double* [m]; // массив под запись
std::cout << "befor:" << std::endl;
for (int jjj = 0; jjj < m; jjj++) {
base_mas[jjj] = new double[n];
copy_mas[jjj] = new double[n];
// заполняем исходный массив случайными числами и выводим в консоль
for (int kkk = 0; kkk < n; kkk++)
{
base_mas[jjj][kkk] = rand() % 101;
std::cout << base_mas[jjj][kkk] << '\t';
}
std::cout << std::endl;
}
// сортируем
sort(base_mas, copy_mas, n, m);
// выводим результат
std::cout<<"\nafter:" << std::endl;
for (int jjj = 0; jjj < m; jjj++) {
for (int kkk = 0; kkk < n; kkk++) {
std::cout << copy_mas[jjj][kkk] << '\t';
}
std::cout << std::endl;
}
// овобождаем память (хотя т.к конец программы делать не обязательно)
for (int jjj = 0; jjj < m; jjj++) {
delete[] base_mas[jjj];
delete[] copy_mas[jjj];
}
delete[] base_mas;
delete[] copy_mas;
}
Поделитесь своими знаниями, ответьте на вопрос:
Pascal даны два массива а и в. подсчитать сумму и количество элементов по каждой строке, предшествующих первому отрицательному элементу. из полученных значений сформировать вектора.
program raf105;
const
n = 4;
var
a,b: array[1..n,1..n] of integer;
vkol1,vkol2,vsum1,vsum2: array[1..n] of integer;
i,j,sum1,sum2,kol1,kol2: integer;
x1,x2: boolean;
begin
for i: =1 to n do
begin
x1: = false;
x2: = false;
kol1: = 0;
kol2: = 0;
sum1: = 0;
sum2: = 0;
for j: =1 to n do
begin
a[i,j]: = random(-9,9);
b[i,j]: = random(-9,9);
if a[i,j] < 0
then x1: = true;
if b[i,j] < 0
then x2: = true;
if not(x1)
then begin
sum1: = sum1 + a[i,j];
kol1: = kol1 + 1;
end;
if not(x2)
then begin
sum2: = sum2 + b[i,j];
kol2: = kol2 + 1;
end;
end;
vkol1[i]: = kol1;
vkol2[i]: = kol2;
vsum1[i]: = sum1;
vsum2[i]: = sum2;
end;
writeln('массив a');
for i: =1 to n do
begin
writeln;
for j: =1 to n do
write(a[i,j]: 3);
end;
writeln;
writeln;
writeln('массив b');
for i: =1 to n do
begin
writeln;
for j: =1 to n do
write(b[i,j]: 3);
end;
writeln;
writeln;
write('вектор "количество по строкам a": ');
for i: =1 to n do
write(vkol1[i],' ');
writeln;
write('вектор "количество по строкам b": ');
for i: =1 to n do
write(vkol2[i],' ');
writeln;
write('вектор "сумма по строкам a": ');
for i: =1 to n do
write(vsum1[i],' ');
writeln;
write('вектор "сумма по строкам b": ');
for i: =1 to n do
write(vsum2[i],' ');
end.
pascalabc 3.4.2