Другие языки программирования и технологии

помогите, кому не трудно, перевести с языка Pascal на язык СИ код программы

Задание:
Дана матрица, определить количество «особых» элементов. Элемент считается «особым» , если он больше суммы остальных элементов строки. Код Pascal
uses crt;
const m1=7;m2=5;
var m:array[1..m1,1..m2] of integer; i, j, j1, q : integer;
begin randomize; clrscr;
for i:=1 to m1 do begin q:=0;writeln;
for j:=1 to m2 do begin
m[i,j]:=random(10)+1; writeln (' ',m[i,j]);
q:=m[i, j]+q;
if j=m2 then begin {Eto proverayet zapolnilas li stroka ili net, esli da to nachinaet iskat osobiye elementi}
for j1:=1 to m2 do begin
if m[i,j1]> (q-m[i, j1]) then write ( '<!!>', m[i, j1]);
end; end; end; end;
readln; readln; end.
#include <iostream>
#include <iomanip>
#include <random>
#include <utility>
using namespace std;
int randomize(int left = 1, int right = 10);
void fill_array(int* v, const size_t size);
void print_array(int* v, const size_t size, streamsize = 5);
int sum(int* v, const size_t size);
int max(int* v, const size_t size);
bool special(int* v, const size_t size);
void main() {
const size_t rows = 7, cols = 5;
int matrix[rows][cols];
for (size_t i = 0; i < rows; ++i) fill_array(matrix[i], cols);
for (size_t i = 0; i < rows; ++i) print_array(matrix[i], cols);
int count = 0;
for (size_t i = 0; i < rows; ++i) if (special(matrix[i], cols)) ++count;
cout << "\n Result: " << count << endl;
cin.get();
}
int randomize(int left, int right) {
if (left > right) swap(left, right);
uniform_int_distribution<int> rand(left, right);
random_device rnd;
return rand(rnd);
}
void fill_array(int* v, const size_t size) {
for (size_t i = 0; i < size; ++i) {
v[i] = randomize();
if (i == randomize()) v[i] *= randomize();
}
}
void print_array(int* v, const size_t size, streamsize w) {
for (size_t i = 0; i < size; ++i) cout << setw(w) << v[i];
cout << endl;
}
int sum(int* v, const size_t size) {
int sm = 0;
for (size_t i = 0; i < size; ++i) sm += v[i];
return sm;
}
int max(int* v, const size_t size) {
int mx = v[0];
for (size_t i = 1; i < size; ++i) if (mx < v[i]) mx = v[i];
return mx;
}
bool special(int* v, const size_t size) {
int mx = max(v, size);
return sum(v, size) - mx < mx? true : false;
}
Максим Иванов
Максим Иванов
82 063
Лучший ответ
Максим Иванов Теперь просите, чтобы с С++ на Си перевели)
И где тут программа считает хоть какое-то количество? Я, например, этого не вижу