#include <stdio.h>
#include <stdlib.h>
#include<time.h>
#include<malloc.h>
void matrix(void) {
setlocale(0,".1251");
unsigned int i,
j;
long min,
max;
printf("Введите количество строк матрицы:\n");
scanf("%u",&i);
printf("Введите количество столбцов матрицы:\n");
scanf("%u",&j);
printf("Введите минимум чисел:\n");
scanf("%li",&min);
printf("Введите максимум чисел:\n");
scanf("%li",&max);
srand(time(NULL));
long *mas = (long*)malloc(sizeof(long)*i*j);
printf("Ваш массив:\n");
for(unsigned int ti=0;ti<i;ti++){
for(unsigned int tj=0;tj<j;tj++){
mas[ti*j+tj] = rand()%(max-min+1)+min;
printf("%li \t",mas[ti*j+tj]);
}
printf("\n");
}
printf("Елементы под побочной диагональю(лишние заменены на символ *):\n");
for(unsigned int ti=0;ti<i;ti++){
for(unsigned int tj=0;tj<j;tj++){
if(ti>j-tj-1) printf("%li \t",mas[ti*j+tj]);
else printf("* \t");
}
printf("\n");
}
free(mas);
}
int main(int argc, char *argv[]) {
matrix();
return 0;
}
const
n=3;m=4;
var
a:array [1..n+1,1..m] of integer;
i,j:integer;
begin
for i:=1 to n do
begin
for j:=1 to m do
begin
readln(a[i,j]);
if a[i,j]>0 then
inc(a[n+1,j]);
end;
writeln;
end;
for i:=1 to n+1 do
begin
for j:=1 to m do
write(a[i,j]:4);
if i<>n then
writeln
else
begin
writeln;
writeln('Счётчик:');
end;
end;
end.
Поделитесь своими знаниями, ответьте на вопрос:
Дана последовательность чисел а длины n. требуется вывести в обратном порядке. первая строка входного файла содержит целое число n (1 < = n < = 1000000) - длину последовательности. вторая строка входного файла содержит n целых чисел - элементы последовательности a. все элементы последовательности не превосходят 100000 по абсолютному значению. в единственной строке выходного файла выведите элементы последовательности a в обратном порядке. для наглядности обратите внимание на примеры. a in 3 a out 321 123 4 a out 1231 1321