1

Тема: Багатофайловий проект, у якому є декілька файлів з функціями

Всім доброго вечора!!!Мені дали одне цікаве завдання з програмування, ніяк розібратись не можу!!!В мене є готовий код програми!Ось власне завдання:
необхідно оформити у вигляді багатофайлового проекту, якому є декілька файлів з функціями програми та заголовочні файли. Задача, яка задана в індивідуальному завданні має бути реалізована у вигляді окремої функції (чи функцій) і розміщатися в окремому файлі (чи файлах). Функція main має демонструвати працездатність основної задачі. Тобто, задавати вхідні параметри, звертатися до підпрограми тестованої задачі та виводити результати. Якщо задача буде себе по різному вести при різних вхідних параметрах, то функція main має тестувати всі можливі варіанти.
Ось сама задача:
Заповнити матрицю випадковими числами!Показати головну і побічну діагоналі симетрично відносно вертикальної осі!Ось код програми(робочий):

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <malloc.h>
 
// main
int main()
{ 
int i, j, size;
int** m;
 
srand(time(0)); 
scanf("%d", &size);
m = (int**) malloc(size*sizeof(int*));
 for(i=0;i<size;i++) 
m[i] = (int*) malloc(size*sizeof(int));
 
for (i=0;i<size;i++)
for(j=0;j<size;j++)
m[i][j]=rand()%9;
 
for (i=0;i<size;i++)
{
for(j=0;j<size;j++) 
{
 
if (j == (size - 1) - i) printf( "%d ", m[i][j]);
 
if (i != j) {if (j != (size - 1) - i) printf( "  ", m[i][j]);}
else { if (j != (size - 1) - i) printf( "%d ", m[i][j]);}
 
}
printf( "\n");
}
 
printf( "\n");
 
for(i=0;i<size;i++) 
free (m[i]);
 
free(m);

 
getch (); 
return 0;

}

В загальному я знаю як це повинно виглядати!Це має бути проект з декількова source file(сам код) з розшереннм file.c! Кожен цей файл це є окрема функція з програми винесена !! Проте я не знаю як самі функції відокремити! Виглядає ніби все легко проте...
Прошу допомоги!!P.S остання лаба з програмування перед сесією!

2

Re: Багатофайловий проект, у якому є декілька файлів з функціями

і ще питання!!Якщо в програмі немає функцій то оформити в багатофайловому проекті не вийде!!Я тільки помітив що в тій програмі немає функцій!

Re: Багатофайловий проект, у якому є декілька файлів з функціями

Наскільки я зрозумів, сам кож треба розділити на функції.
Код маленький і не бачу доцільності розділяти його на функції та ще й виносити в окремі файли.

4

Re: Багатофайловий проект, у якому є декілька файлів з функціями

маленький то маленький, але завдання зробити треба!Якщо не важки можеш розділити?

5

Re: Багатофайловий проект, у якому є декілька файлів з функціями

Підійде так?

foo.c

#include <time.h>
#include <stdio.h>
#include <malloc.h>

void foo(int size)
{

int i, j;
    int** m;
     
    m = (int**) malloc(size*sizeof(int*));
    
    for(i=0;i<size;i++) 
        m[i] = (int*) malloc(size*sizeof(int));
     
    for (i=0;i<size;i++)
        for(j=0;j<size;j++)
            m[i][j]=rand()%9;
     
    for (i=0;i<size;i++)
    {
        for(j=0;j<size;j++) 
        {
            if (j == (size - 1) - i)
                printf( "%d ", m[i][j]);
         
            if (i != j) 
            {
                if (j != (size - 1) - i)
                    printf( "  ", m[i][j]);
            }
            else 
            {
                if (j != (size - 1) - i)
                    printf( "%d ", m[i][j]);
            }
        }
        printf( "\n");
    }
     
    printf( "\n");
     
    for(i=0;i<size;i++) 
        free (m[i]);
     
    free(m);

}
     

foo.h

void foo(int size);

main.c

#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include "foo.h"

int main()
{
    int size;
    srand(time(0)); 
    
    scanf("%d", &size);

    foo();

    getch();

    return 0;
}

6

Re: Багатофайловий проект, у якому є декілька файлів з функціями

все ніби нормально проте вибиває помилка!!
too few arguments for call
Пошукав в інтернеті, що це може бути - компілятор виявив недостатньо параметрів для виклику функції або невірне оголошення функції.

7

Re: Багатофайловий проект, у якому є декілька файлів з функціями

Та ж логічно - я нашвидкуруч накидав, і випустив із виду.

foo(size);

Добре, що виявили проблему:).
А в чому проект збираєте? Яке IDE?

8

Re: Багатофайловий проект, у якому є декілька файлів з функціями

Visual C++ 2005 Express Edition