Форум «Всё о Паскале» _ Ада и другие языки _ Функции в С
Автор: _Hanter_ 7.12.2011 22:32
Найти наименьшее общее кратное n заданных натуральных чисел.
Код
#include <math.h> #include <stdio.h> #include <windows.h> void NOK(int x,int y); void NOD(int x,int y); {if (x!=0) NOD=NOD(y%x,x); else NOD=y} {NOK=(x/NOD(x,y))*y;} void main () { int A[100], n,i,k,y; printf("введите розмер масива:"); scanf ("%i",&n); printf("введите масив:\n"); for(i=0;i<n;i++) scanf("%i",&A[i]); printf("Исходный масив:\n"); for(i=0;i<n;i++) printf("%i",A[i]); { printf("введите кол-во элементов от 3 до 100 n="); for(i=0;i<n;i++) scanf("%i",&A[i]); printf("Исходный масив:\n"); for(i=0;i<n;i++) printf("%i",A[i]); k=NOK(A[1],A[2}); for(i=0;i<n;i++) {k=NOK(k,A[i]); printf("Общий NOK всех елементов=%i",k); system("pause");}
Автор: IUnknown 7.12.2011 23:20
Цитата
Почему не получается
Причин много. Первая - это то, что ты ставишь точки с запятыми. Это не Паскаль, в С не нужно завершать описание заголовка функции точкой с запятой. Во-вторых, в С вообще нет вложенных функций, которые ты пытаешься использовать (если я правильно прочел код, там есть попытка сделать функцию NOD локальной, внутри NOK).
Автор: Гость 8.12.2011 0:00
А как сделать чтобы работала правильно???
Автор: IUnknown 8.12.2011 1:03
Цитата(Гость @ 7.12.2011 19:00)
А как сделать чтобы работала правильно???
Вот так, например:
#include <math.h> #include <stdio.h>
int NOD(int x, int y) { if (x) return NOD(y%x, x); return y; }
int NOK(int x, int y) { return (x / NOD(x, y)) * y; }
int main () { int A[100], n,i,k; printf("введите размер массива:"); scanf ("%i",&n); printf("введите массив:\n"); for(i=0;i<n;i++) scanf("%i",&A[i]);
k = NOK(A[0],A[1]); for(i=2;i<n;i++) k=NOK(k,A[i]);
printf("Общий NOK всех элементов=%i",k); /* system("pause"); */ return 0; }
Автор: Гость 8.12.2011 22:17
Спасибо)) Скиньте нармальною прогу для программирования на С...
Автор: IUnknown 9.12.2011 13:59
"Нормальную" - это как?
make "Пыщь-пыщь, программа, НАПИШИСЬ!"
? Такой не встречал.
Бери любой компилятор, желательно поновее + приличную среду разработки (лично я пользуюсь http://www.codeblocks.org/downloads, там все в одном флаконе, и компилятор и IDE) и пиши программы.