Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

C 프로그래밍

  1. C++로 두 대각선이 주어진 마름모의 넓이와 둘레 계산하기

    마름모란 무엇인가?기하학에서 마름모는 네 변의 길이가 모두 같은 사각형을 의미합니다. 마름모는 다이아몬드(◆) 모양과 닮았으며, 두 대각선이 직각으로 만나는 경우에는 정사각형이 됩니다.마름모의 주요 성질은 다음과 같습니다.네 변의 길이가 모두 같다마주 보는 두 변은 서로 평행하고, 마주 보는 두 각의 크기도 같아서 평행사변형에 속한다두 대각선은 서로 직각으로 이등분한다아래 그림은 마름모의 형태를 나타낸 것입니다.문제 정의두 대각선의 길이 d1과 d2가 주어졌을 때, 마름모의 넓이와 둘레를 구하는 것이 이번 과제입니다. 여기서 넓이는

  2. C언어로 정삼각형 내접원의 넓이와 둘레 계산하기: 개념부터 코드까지

    정삼각형(Equilateral Triangle)이란? 이름에서 알 수 있듯이 정삼각형은 세 변의 길이가 모두 같고, 세 내각 또한 각각 60°로 동일한 삼각형입니다. 정다각형(regular polygon)에 속하기 때문에 정규 삼각형이라고도 불립니다. 정삼각형의 주요 성질은 다음과 같습니다. 세 변의 길이가 모두 같다 세 내각의 크기가 모두 60°로 동일하다 내접원(Incircle)이란? 내접원은 삼각형의 내부에 위치하는 원으로, 삼각형의 세 변에 모두 닿으며 원의 중심이 삼각형의 중심과 일치합니다. 이때 내접원

  3. C 언어로 구현하는 피보나치 수열 프로그램 완벽 가이드

    주어진 숫자 n까지의 피보나치 수열을 생성하는 것이 이 프로그램의 목표입니다. 피보나치 수열은 0부터 시작하여 다음과 같은 형태로 나타납니다.0, 1, 1, 2, 3, 5, 8, 13, 21, 34여기서 첫 두 숫자인 0과 1은 항상 고정된 값이며, 그 이후부터는 앞의 두 숫자를 더한 값이 다음 자리에 위치하게 됩니다.0+1=1(3번째 자리) 1+1=2(4번째 자리) 2+1=3(5번째 자리) ... 이후 계속 반복피보나치 수열의 점화식피보나치 수열의 n번째 항 F(n)는 다음과 같은 점화식으로 정의됩니다.Fn = Fn-1 + Fn-

  4. C 언어로 십각형의 둘레를 계산하는 방법

    변의 길이가 주어졌을 때, 그것으로 십각형의 둘레를 구하는 것이 이번 글의 목표입니다. 먼저 십각형이 무엇인지 간단히 살펴보겠습니다.십각형(Decagon)이란?십각형은 열 개의 변을 가진 다각형으로, 10각 다각형이라고도 불립니다. 열 개의 꼭짓점과 열 개의 변을 가지며, 정십각형(regular decagon)의 경우 모든 변의 길이가 같고 각 내각의 크기는 144도입니다.아래는 십각형의 도형 예시입니다.둘레 계산 공식정십각형의 모든 변은 길이가 같으므로, 둘레는 아래와 같이 아주 간단한 공식으로 구할 수 있습니다.둘레 = 10 ×

  5. C 언어로 nPr(순열) 값을 계산하는 프로그램

    이 글에서는 nPr 값을 계산하는 C 프로그램을 다룹니다. 여기서 P는 순열(Permutation)을 의미하고, n은 전체 데이터의 개수, r은 배열할 개수를 나타냅니다.순열(nPr)이란?순열은 데이터를 일정한 순서나 배열에 따라 나열하는 것을 말합니다. 순열과 조합의 차이는 다음과 같습니다. 순열은 요소를 배열(arrangement)하는 과정이고, 조합은 주어진 집합에서 요소를 선택(selection)하는 과정입니다. 즉, 순열은 순서가 중요하지만 조합은 순서가 중요하지 않습니다.순열 공식순열의 값은 다음 공식으로 계산할 수 있습

  6. C 언어로 특정 연도가 윤년인지 판별하는 프로그램

    윤년(leap year)은 366일로 구성된 해이며, 일반적인 해(평년)는 365일입니다. 이 글에서는 C 언어를 사용하여 주어진 연도가 윤년인지 아닌지를 판별하는 프로그램을 작성하는 방법을 알아봅니다.판별의 기본 원리는 간단합니다. 해당 연도가 400 또는 4로 나누어 떨어지면 윤년으로 판단하고, 어느 쪽으로도 나누어 떨어지지 않으면 평년으로 처리합니다.입력 및 출력 예시입력: year = 2000출력: 2000 is a Leap Year입력: year = 101출력: 101 is not a Leap Year알고리즘시작Step 1

  7. C 언어로 센티미터를 피트와 인치로 변환하는 프로그램 만들기

    개요 센티미터(cm) 단위의 길이 값이 주어졌을 때, 이를 피트(feet)와 인치(inch) 단위로 변환하는 프로그램을 C 언어로 작성해 보겠습니다. 이 변환은 아래와 같은 표준 길이 환산 공식만 기억하면 누구나 쉽게 구현할 수 있습니다. 1 피트(feet) = 30.48cm 1 인치(inch) = 2.54cm 즉, 1cm는 약 0.3937인치이며, 1cm는 약 0.0328피트에 해당합니다. 이 두 환산 계수를 이용하면 별도의 외부 라이브러리 없이도 간단한 산술 연산만으로 변환을 처리할 수 있습니다. 입력·출력 예시 입력: 센티미터

  8. C 언어로 구현하는 항등 행렬(Identity Matrix) 생성 및 판별 프로그램

    정방행렬(square matrix) M[r][c]에서 r은 행(row)의 개수, c는 열(column)의 개수를 의미하며, 두 값이 같은 경우(r = c) 이 행렬 M이 항등 행렬인지 아닌지를 판별해야 합니다.항등 행렬이란?항등 행렬(Identity Matrix)은 크기가 n×n인 정방행렬로, 단위 행렬(Unit Matrix)이라고도 불립니다. 주대각선(main diagonal)에 위치한 원소는 모두 1이고, 그 외의 비대각선 원소는 모두 0으로 채워진 행렬입니다.행렬 연산에서 항등 행렬은 곱셈의 항등원 역할을 하므로, 임의의 행렬

  9. C++ 배열에서 최솟값·최댓값 소수 찾기

    문제 설명 n개의 양의 정수로 이루어진 배열이 주어졌을 때, 배열에 들어 있는 수 중에서 값이 가장 작은 소수와 가장 큰 소수를 찾아야 합니다. 예를 들어 다음과 같은 배열이 주어졌다고 가정해 보겠습니다. arr[] = {10, 4, 1, 12, 13, 7, 6, 2, 27, 33} → 최솟값 소수는 2, 최댓값 소수는 13입니다. 알고리즘 1. 입력 배열에서 최댓값을 구합니다. 이 값을 maxNumber라고 합니다. 2. 1부터 maxNumber까지의 소수를 모두 구해 동적 배열(vector)에 저장합니다. 3. 입력 배열을 순회

  10. C 언어로 라디안(Radian)을 도(Degree)로 변환하는 프로그램 작성하기

    삼각함수 계산이나 그래픽 프로그래밍을 하다 보면 라디안(radian)으로 표현된 각도를 도(degree) 단위로 바꿔야 하는 경우가 자주 발생합니다. 다행히 이러한 변환은 간단한 수학 공식 하나만 기억하면 C 언어에서 몇 줄의 코드로도 손쉽게 구현할 수 있습니다.라디안은 각도를 측정하는 국제 표준(SI) 단위이며, 원의 중심각 한 바퀴 전체는 360도로 나뉩니다. 라디안과 도의 관계는 π(파이) 라디안 = 180도이므로, 1라디안은 약 57.3도에 해당하고 반대로 1도는 약 0.0175라디안입니다.변환 공식라디안을 도로 변환할 때는

  11. C 언어로 N번째 짝수 구하는 프로그램

    문제 이해하기숫자 N이 주어졌을 때, N번째 짝수를 찾는 것이 이 프로그램의 목표입니다.짝수란 2로 나누었을 때 나머지가 0이 되는 수를 의미합니다. 예를 들어 2, 4, 6, 8, 10... 처럼 2의 배수로 이루어진 숫자들이 모두 짝수에 해당합니다.접근 방법짝수 목록을 자세히 관찰해 보면 다음과 같은 패턴을 발견할 수 있습니다.2*1=2, 2*2=4, 2*3=6, 2*4=8, ..., 2*N즉, 모든 짝수는 2 × N 형태로 표현할 수 있습니다. 따라서 이 문제는 매우 간단하게 해결할 수 있는데, 주어진 숫자 N에 2를 곱하기만

  12. C 언어로 N번째 홀수 구하는 프로그램

    이 글에서는 숫자 N이 주어졌을 때 N번째 홀수를 구하는 방법을 알아보겠습니다.홀수란 무엇인가?홀수란 2로 나누었을 때 나누어 떨어지지 않고 나머지가 0이 아닌 수를 말합니다. 예를 들어 1, 3, 5, 7, 9... 같은 수들이 홀수입니다.홀수의 규칙성홀수 목록을 자세히 살펴보면 다음과 같은 패턴으로 표현할 수 있습니다.(2×1)-1 = 1(2×2)-1 = 3(2×3)-1 = 5(2×4)-1 = 7...(2×N)-1즉, 어떤 수 N에 2를 곱한 뒤 1을 빼면 항상 홀수가 됩니다. 이 공식을 활용하면 반복문 없이도 간단하게 N번째

  13. C 언어로 직사각형의 넓이와 둘레 구하기

    직사각형의 가로(밑변)와 세로(높이) 길이가 주어졌을 때, 이를 이용해 직사각형의 넓이와 둘레를 계산하는 프로그램을 C 언어로 작성해 보겠습니다.직사각형이란?직사각형은 네 개의 변과 네 개의 내각(모두 90도)으로 이루어진 2차원 도형입니다. 직사각형의 네 변이 모두 같은 것은 아니며, 마주 보는 두 변만 서로 같습니다. 또한 직사각형의 두 대각선은 길이가 서로 같다는 특징이 있습니다.아래는 직사각형을 도식화한 그림입니다.그림에서 A는 직사각형의 세로(너비), B는 가로(길이)를 나타냅니다.계산 공식직사각형의 넓이를 구하는 공식은

  14. C 언어로 구현하는 암스트롱 수(Armstrong Number) 판별 프로그램

    이번 글에서는 사용자로부터 입력받은 숫자 n이 암스트롱 수(Armstrong Number)인지 아닌지를 판별하는 프로그램을 C 언어로 작성해 보겠습니다.암스트롱 수란?암스트롱 수란 각 자릿수를 자릿수의 개수(n, 즉 자릿수의 차수)만큼 거듭제곱한 후, 그 값들을 모두 더한 합이 원래의 숫자와 같아지는 수를 말합니다.예를 들어 1634는 네 자리 숫자이며, 각 자릿수를 4제곱하여 더하면 다음과 같습니다.1⁴ + 6⁴ + 3⁴ + 4⁴ = 1 + 1296 + 81 + 256 = 1634결과가 원래 숫자인 1634와 같으므로 1634는

  15. C/C++ 삼항 연산자(Conditional Operator) 문법과 활용 예제

    삼항 연산자(Ternary Operator)란?삼항 연산자는 이름 그대로 세 개의 피연산자를 가지는 유일한 연산자로, 조건의 참·거짓 여부에 따라 두 값 중 하나를 선택하여 반환합니다. 간단한 조건 분기를 if-else문 없이 한 줄로 처리할 수 있어 코드를 더 간결하게 만들어 줍니다.삼항 연산자의 문법(expression-1) ? expression-2 : expression-3이 연산자는 표현식의 평가 결과에 따라 두 값 중 하나를 반환합니다. 동작 방식은 다음과 같습니다.expression-1: 조건을 판별하는 표현식으로, B

  16. C/C++로 문자열의 모음과 자음을 번갈아 배치하기

    모음과 자음이 섞여 있는 입력 문자열이 주어졌을 때, 최종 문자열에서 모음과 자음이 번갈아 나타나도록 재배열하는 문제를 살펴보겠습니다. 모음과 자음을 교대로 배치하려면 입력 문자열은 다음 조건 중 하나를 반드시 만족해야 합니다.모음과 자음의 개수가 같아야 합니다. 예를 들어 문자열 individual은 모음 5개와 자음 5개로 이루어져 있습니다.모음이 더 많다면, 모음 개수에서 자음 개수를 뺀 차이가 정확히 1이어야 합니다. 예를 들어 문자열 noe는 모음 2개와 자음 1개로 구성되어 있습니다.자음이 더 많다면, 자음 개수에서 모음

  17. C 언어에서 구조체 멤버 배열이 전체 복사(Deep Copy)되는 이유

    C 언어의 구조체(structure)는 사용자가 직접 정의하는 데이터 타입을 만들 수 있게 해주는 강력한 기능입니다. 구조체의 멤버는 int나 char 같은 기본(primitive) 타입일 수도 있고, 정적으로 할당된 배열일 수도 있습니다.구조체 변수를 다른 변수에 대입하면 일반적으로 얕은 복사(shallow copy)가 수행됩니다. 하지만 여기에는 중요한 예외가 하나 있습니다. 바로 구조체 멤버가 배열인 경우입니다. 이때는 컴파일러가 자동으로 깊은 복사(deep copy)를 수행하여 배열의 모든 요소 값이 통째로 복사됩니다.즉,

  18. C 언어로 풀어보는 곱 배열 퍼즐: 나눗셈 없이 자기 자신을 제외한 곱 구하기

    배열(array)은 동일한 데이터 타입의 요소들을 담는 컨테이너입니다. 곱 배열 퍼즐(Product Array Puzzle)은 배열에 담긴 모든 요소들의 곱을 다루는 대표적인 알고리즘 문제로, 코딩 인터뷰에서도 자주 등장합니다.문제 정의곱 배열 퍼즐의 목표는 배열의 각 위치에 대해 자기 자신을 제외한 나머지 모든 요소들의 곱을 구하는 것입니다. 단, 다음과 같은 제약 조건이 주어집니다.나눗셈 연산자(/)를 사용할 수 없습니다.결괏값은 반드시 별도의 배열에 저장해야 합니다.전체 요소의 곱을 먼저 구한 뒤 각 요소로 나누면 간단히 해결

  19. C로 구하는 반원에 내접하는 직사각형에 내접하는 원의 넓이

    문제 개요반원 안에 직사각형이 내접하고, 그 직사각형 안에 다시 원이 내접하는 중첩 도형에서 가장 안쪽 원의 넓이를 구하는 문제입니다. 각 도형 사이의 기하학적 관계를 단계별로 정리하면, 반원의 반지름 값만으로 최종 원의 넓이를 간단한 공식 하나로 계산할 수 있습니다.기하학적 관계 정리직사각형에 내접하는 원: 원은 직사각형의 네 변에 모두 접하며, 원의 지름은 직사각형의 짧은 변(높이)의 길이와 같습니다.반원에 내접하는 직사각형: 직사각형의 아래 변은 반원의 지름 위에 놓이고, 위쪽 두 꼭짓점은 반원의 호와 두 점에서 만납니다. 넓

  20. C 언어로 직사각형에 내접하는 가장 큰 마름모의 넓이 구하기

    직사각형에 내접하는 가장 큰 마름모의 넓이직사각형에 내접하는 마름모는 직사각형의 네 변에 모두 닿게 됩니다. 이 성질로부터, 직사각형 안에 들어갈 수 있는 가장 큰 마름모의 두 대각선 길이는 각각 직사각형의 가로 길이와 세로 길이와 같다는 것을 알 수 있습니다. 실제로 가장 큰 마름모는 직사각형 각 변의 중점을 꼭짓점으로 가지며, 이때 마름모의 대각선은 직사각형의 변과 평행하게 놓입니다.직사각형의 가로 길이를 l, 세로 길이를 b라고 하면, 그 안에 내접하는 가장 큰 마름모의 대각선 길이는 다음과 같습니다.d1 = ld2 = b마름

Total 1443 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:37/73  20-컴퓨터/Page Goto:1 31 32 33 34 35 36 37 38 39 40 41 42 43