Перевести из паскаля в СИ - C (СИ) (75592)

Узнай цену своей работы

Формулировка задачи:

Переведите кому не сложно:
var
  a:array[1..10]of integer;
  b:array[1..4,1..4] of integer;
  i,j,counter:integer;
  
begin
  for i:=1 to 10 do a[i]:=i;
  
  counter:=1;
  for i:=1 to 4 do
    for j:=i to 4 do
      begin
        b[i,j]:=a[counter];    
        b[j,i]:=a[counter];
        inc(counter);
      end;
  for i:=1 to 4 do begin
  for j:=1 to 4 do write(b[i,j]:3); writeln; end;
end.

Решение задачи: «Перевести из паскаля в СИ»

textual
Листинг программы
include <stdio.h>
 
int main()
{
    int a[10],b[4][4],i,j,counter;
    
    for (i=0;i<10;i++) a[i]=i;
 
    counter=1;
    for (i=0;i<4;i++)
        for (j=i;j<4;j++) {
            b[i][j]=a[counter];
            b[j][i]=a[counter];
            counter+=1;
         }
    for (i=0;i<4;i++) {
        for (j=0;j<4;j++) printf("%3d ",b[i][j]);
        printf("");
    }
    return 0;
}

Объяснение кода листинга программы

  1. Объявлены три массива: a[10], b[4][4] и counter.
  2. В цикле for заполняются значениями массива a[10].
  3. В цикле for перебираются значения массива a[10] для заполнения массива b[4][4].
  4. Значения массива b[4][4] выводятся на экран в формате 3 столбца по 4 значения.
  5. Возвращается 0, заканчивая работу программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.9 из 5