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 신호가 매우 높은 부하를 전달해야