C 언어
이 튜토리얼에서는 함수를 사용하여 동일한 문제를 해결하기 위해 취할 수 있는 다양한 접근 방식에 대해 배울 것입니다.
아래 4가지 프로그램은 사용자가 입력한 정수가 소수인지 아닌지를 확인합니다.
아래 모든 프로그램의 출력은 동일하며 각 예제에서 사용자 정의 함수를 만들었습니다. 그러나 각 예에서 취한 접근 방식은 다릅니다.
<시간>
#include <stdio.h>
void checkPrimeNumber();
int main()
{
checkPrimeNumber(); // argument is not passed
return 0;
}
// return type is void meaning doesn't return any value
void checkPrimeNumber()
{
int n, i, flag = 0;
printf("Enter a positive integer: ");
scanf("%d",&n);
for(i=2; i <= n/2; ++i)
{
if(n%i == 0)
{
flag = 1;
}
}
if (flag == 1)
printf("%d is not a prime number.", n);
else
printf("%d is a prime number.", n);
}
checkPrimeNumber() 함수는 사용자로부터 입력을 받아 소수인지 확인하여 화면에 표시합니다.
checkPrimeNumber();의 빈 괄호 main() 안의 문 함수는 인수가 함수에 전달되지 않았음을 나타냅니다.
함수의 반환 유형은 void입니다. . 따라서 함수에서 값이 반환되지 않습니다.
#include <stdio.h>
int getInteger();
int main()
{
int n, i, flag = 0;
// no argument is passed
n = getInteger();
for(i=2; i<=n/2; ++i)
{
if(n%i==0){
flag = 1;
break;
}
}
if (flag == 1)
printf("%d is not a prime number.", n);
else
printf("%d is a prime number.", n);
return 0;
}
// returns integer entered by the user
int getInteger()
{
int n;
printf("Enter a positive integer: ");
scanf("%d",&n);
return n;
}
n = getInteger();의 빈 괄호 문은 함수에 전달된 인수가 없음을 나타냅니다. 그리고 함수에서 반환된 값은 n에 할당됩니다. .
여기서 getInteger() 함수는 사용자로부터 입력을 받아 반환합니다. 숫자가 소수인지 확인하는 코드는 main() 안에 있습니다. 기능.
#include <stdio.h>
void checkPrimeAndDisplay(int n);
int main()
{
int n;
printf("Enter a positive integer: ");
scanf("%d",&n);
// n is passed to the function
checkPrimeAndDisplay(n);
return 0;
}
// return type is void meaning doesn't return any value
void checkPrimeAndDisplay(int n)
{
int i, flag = 0;
for(i=2; i <= n/2; ++i)
{
if(n%i == 0){
flag = 1;
break;
}
}
if(flag == 1)
printf("%d is not a prime number.",n);
else
printf("%d is a prime number.", n);
}
사용자가 입력한 정수 값은 checkPrimeAndDisplay()에 전달됩니다. 기능.
여기에서 checkPrimeAndDisplay() 함수는 전달된 인수가 소수인지 여부를 확인하고 적절한 메시지를 표시합니다.
#include <stdio.h>
int checkPrimeNumber(int n);
int main()
{
int n, flag;
printf("Enter a positive integer: ");
scanf("%d",&n);
// n is passed to the checkPrimeNumber() function
// the returned value is assigned to the flag variable
flag = checkPrimeNumber(n);
if(flag == 1)
printf("%d is not a prime number",n);
else
printf("%d is a prime number",n);
return 0;
}
// int is returned from the function
int checkPrimeNumber(int n)
{
int i;
for(i=2; i <= n/2; ++i)
{
if(n%i == 0)
return 1;
}
return 0;
}
사용자의 입력은 checkPrimeNumber()로 전달됩니다. 기능.
checkPrimeNumber() 함수는 전달된 인수가 소수인지 여부를 확인합니다.
전달된 인수가 소수이면 함수는 0을 반환하고 전달된 인수가 소수가 아닌 경우 1을 반환합니다. 반환 값은 flag에 할당됩니다. 변수.
플래그 여부에 따라 0 또는 1이면 main()에서 적절한 메시지가 인쇄됩니다. 기능.
글쎄, 그것은 당신이 해결하려는 문제에 달려 있습니다. 이 경우 인수를 전달하고 함수(예제 4)에서 값을 반환하는 것이 좋습니다.
함수는 특정 작업을 수행해야 합니다. checkPrimeNumber() 함수는 사용자로부터 입력을 받지도 않고 적절한 메시지를 표시하지도 않습니다. 숫자가 소수인지 여부만 확인합니다.
C 언어
포인터는 하나의 값을 반환하도록 제한되는 C 함수에 큰 가능성을 제공합니다. 포인터 매개변수를 사용하면 이제 함수에서 데이터 복사본이 아닌 실제 데이터를 처리할 수 있습니다.변수의 실제 값을 수정하기 위해 호출 문은 함수의 포인터 매개변수에 주소를 전달합니다.여기에서 튜토리얼, 당신은 배울 것입니다- 함수 포인터의 예 배열 매개변수가 있는 함수 배열을 반환하는 함수 함수 포인터 함수 포인터 배열 void 포인터를 사용한 함수 인수로서의 함수 포인터 함수 포인터의 예 예를 들어, 다음 프로그램은 두 값을 2로 교환합
아두이노 PWM Arduino의 프로그래밍 및 기능 PWM이란 무엇입니까? PWM 펄스 폭 변조의 약자 . 이 기술은 전압 변동이 필요한 거의 모든 장치에 널리 사용됩니다. PWM에서 안정된 DC 전압은 펄스 폭이 변하는 구형파로 변환되며 펄스 폭이 ON인 시간에 대한 파형의 총 시간 주기(T)의 비율을 듀티 사이클이라고 합니다. 이 기술은 PDT(Pulse Duration Technique)라고도 합니다. MOSFET, 트랜지스터와 같은 현대 전자 제품의 전원 스위치는 PWM에 필요하며, PWM 신호가 매우 높은 부하를 전달해야