본문 바로가기

프로그래밍

[C++] C언어 함수(function)의 구성, 정의 기초 개념잡기 함수란?- function이라고 하며 뜻은 기능을 뜻합니다.- 기능을 구현하는 부분을 따로 분리하여 구현한 것으로, 구조화 프로그램의 중요한 개념입니다.* 구조화: 프로그램을 기능별로 함수화 하는것 (쉽게말해 프로그램을 기능별로 쪼개는것)* 여기서 구조화된 데이터를 처리할때 struct를 사용하는데 이를 구조체라 하며 구조체에 대해서는 추후 다시 포스팅 하도록 하겠습니다. 함수의 기본 형태 함수는 사진과 같이 반환자료형, 함수이름, 인수목록으로 나뉩니다. - 반환자료형: 메인함수의 사용에서 return 0;부분을 보면 0을 반환한다는 뜻인데 정수형으로 반환하여 int를 사용했습니다.- 함수이름: main함수의 경우 프로그램 실행시 가장 먼저 실행되는 함수입니다.꼭 필요한 함수이며, 변경할 수 없지만 사용.. 더보기
[C++] 입력한 수만큼 뒤집어진 반삼각형 별찍기 (for문 반복문 예제) 개념아래 삼각형의 개념은 단순합니다.입력한 수만큼의 별만 찍으면 되는데 공백은 따로 필요없겠죠?출력하면 이런 형식으로 나올것이고 규칙을 먼저 찾아보면 됩니다.라인을 뜻하는 변수 i는 이런식으로 입력값만큼만 나올것이구요5를 입력했을때 가상의 표입니다. 규칙을 찾아봅시다.i = 가로줄의 갯수(입력한만큼)k = 별을 찍는 갯수 규칙을 찾으셨나요?i = 1씩 증가하며 끝은 입력한 수만큼 진행이 됩니다.k = 1씩 별을 찍어내며 입력값-i만큼 별을 찍어내고 있습니다. 코드1234567891011121314151617181920#include int main(){ int i, k; /* i: 가로줄의 갯수, k: 별의 갯수 */ int line; /* 사용자가 입력한 값을 저장할 변수 */ printf("입력");.. 더보기
[C++] 입력한 수만큼 반삼각형 별찍기 (for문 반복문 예제) 삼각형이 반복문을 연습하는데 가장 기초적이면서 재밌는 알고리즘입니다.오늘은 해당 알고리즘의 개념과 코드에 대해 공부해보겠습니다.개념가상의 공간이 있습니다. 우리는 오늘 이 공간을 활용하여 별을 만들어 볼것입니다.먼저 입력한 가로의 줄 갯수입니다. 예를들어 5를 입력했다고 치면 5개만큼의 가로줄이 생기게 됩니다. 별을 5개 찍게된다면 기본적으로 이런 형식으로 나오게 될것입니다. 우리는 여기서 i와 별의 갯수의 관계를 찾을 수 있습니다.자세히 보시면 i만큼 별이 찍히는게 보이십니까? 즉 j(별의갯수)는 i만큼만 출력하면 반삼각형이 만들어 진다는 법칙을 찾게 되었습니다. 코드12345678910111213141516171819#include int main(){ int i, j; /* i: 가로라인 계산, j.. 더보기
[MFC] MFC 기초다지기 MFC란?MFC(Microsoft Foundation Class)는 윈도우 어플리케이션(Window Application)을 생성하기 위해 만들어진 C++ 클래스 라이브러리이다. 따라서 대부분의 클래스들은 C++ 언어를 확장하여 만들어졌으며 이는 개발자로 하여금 GUI기반의 프로그램 제작환경을 만들어 주는 결과를 낳았으며, 때문에 개발 시간을 크게 단축시켜 주었음 MFC는 크게 단일윈도우(SDI)와 다중윈도우(MDI)로 나눌 수 있다.SDI와 MDI의 차이점- SDI(Single null Interface), MDI(Multiple null Interface) 즉 SDI는 하나의 창을 사용하는 것이고, MDI는 여러개의 창을 사용 때문에 SDI는 익스프플로러나 메모장같은 하나의 창을 사용하는 프로그램을 .. 더보기
[C#] C#데이터 타입 - 참조형식, 변수, 상수 오늘은 C#의 참조형식, 변수, 상수에 대해서 알아보겠습니다 C#에 대하여 전혀 몰랐지만 정리해가면서 점점 코드가 눈에 들어오고 아직 초반이라 그런지 재미도 있네요. 기본 개념설명은 최대한 읽기 쉽고 이해하기 쉽도록 쓰기 때문에 잘라서 적겠습니다.(길게 풀어쓰면 읽으면서도 무슨말인지 모르기 때문에) 참조형식(Reference Type)참조 형식은 string, object, class와 같은 형식.new를 통하여 인스턴스가 생성이 되면 데이터를 참조하는 메모리 주소만 가지고 있습니다.실제 데이터는 분리된 공간에 저장이 됩니다. (무슨뜻인지 모르시면 아래 그림 참고하세요) 참조형식은 기존의 변수를 새로운 변수에 할당할 경우 값 전체를 복사하는 것이 아님.값을 참조하는 주소를 복사하게 됩니다. [ 참조형식 .. 더보기
[C#] C# 데이터타입 - 값형식 C# Data Type 1 - 값형식에 대하여 공부해 보겠습니다. Data Type프로그램은 수 많은 데이터의 입력과 연산, 그 결과의 출력이 일어나게 됩니다.이러한 작업을 하기 위하여 각 데이터에 맞는 형식을 지정하고 연산 등의 작업을 하게 되는 것입니다. Ex) 저의 나이를 나타낼 경우 "25"와 같이 숫자로 표현도 가능하지만 문자로 "스물다섯" 이라고 표현하기도 합니다.하지만 컴퓨터는 숫자인지 문자인지 모르기 때문에 기본적으로 지정을 해주어야 합니다 요약) 나이를 나타낼때 사람은 25, 스물다섯 하면 되지만, 컴퓨터는 숫자인지 문자인지 따로 지정을 해야 알아듣는다. C#에서 지원하는 데이터 형식구분 형식 크기(Bit) 범위 정수-signed sbyte 8 -128 ~ 127 short 16 -32,.. 더보기
[C#] C#의 기초개념과 예제로 보는 텍스트 출력 회사에서 C#을 사용하기때문에 시간날때마다 공부를 하겠습니다 오늘은 첫시간이자 가장 기본적인 텍스트 출력을 해보겠습니다. 보통 Hello world를 하기로 유명하죠 이론C# 기본 개념이해[ C# 기본구조 ] C#으로 작성된 어플리케이션은 크게 클래스(Class), 네임스페이스(Namespace), 어셈블리(Assembly)와 같은 요소로 구성되어 있다. [ Class, Namespace, Assembly 구조 ] - 클래스(Class)프로그램 내에서 독립적으로 존재할 수 있는 최소 단위.멤버로 메소드(Method), 프로퍼티(Property), 이벤트(Event), 델리게이트(Delegate) 등을 가진다. - 네임스페이스(Namespace)여러개의 클래스들이 모인 논리적 그룹 단위 - 어셈블리(Ass.. 더보기
[객체지향vs절차지향] 객체지향과 절차지향의 개념과 차이점 비교 프로그래밍 하시는 분들은 한번쯤 들어보셨을겁니다 객체지향언어와 절차지향언어 이 두개는 무엇이며 두 언어의 차이점은 무엇인가에 대해서 정리하겠습니다. 객체지향 vs 절차지향절차지향정의- 절차 지향 프로그래밍(Procedural Programming) - 루틴, 서브루틴, 매서드, 함수등(이를 통틀어 프로시저라고 한다.)을 이용한 프로그래밍 패러다임을 뜻한다.- 위에서부터 순서대로 실행된다컴퓨터의 작업처리방식과 유사하기 때문에 객체지향보다 빠른처리가 가능- 계산 중심적인 언어- 함수(or 프로시저)가 중심이되고 데이터는 보조기능을 하는 언어 지원언어- C등등 객체지향객체란?기존에 사용하던 함수와 변수를 하나로 묶어놓은 집합입니다.Ex) 눈 코 입을 모아놓은 사람의 얼굴이라는 객체 학생들이 모여있는 하나의 학.. 더보기
[머신비전] 머신비전이란? 머신비전이란?고성능 카메라, 이미지 프로세서, 소프트웨어등 구성요소로 이루어져 있으며카메라, 렌즈, 조명을 이용하여 적절한 이미지를 획득하여획득한 이미지 프로세서, 소프트웨어가 수행하기 적합하게영상처리, 영상분석을 하여 수행할 수 있는 판단을 제공합니다. 한마디로 검수작업시 사람이 직접 눈으로 보고 판단하는 과정을 기계가 처리한다고 보시면 됩니다.따라서 매우 빠른 속도로 처리할 수 있는것이 머신비전의 큰 장점중 하나입니다. 머신비전의 고려사항1. 카메라2. 하드웨어 확장성3. 편리한 소프트웨어4. 알고리즘 폭 및 정확도5. 알고리즘 성능6. 다른 디바이스와 통합7. 가격8. 협력업체 및 시스템 통합 업체9. 기술 지원10. 기업 성장 및 안정도 더보기
[델파이] Delphi란 무엇이며 왜 아직까지 사용하는가? 면접보는 곳에서 Delphi도 사용한다고 적혀있어서 무엇인지 알고가야 할 것 같아서 포스팅을 해보겠습니다. 델파이란?마이크로소프트 윈도우 응용프로그램을 위한 통합개발환경(고속개발도구)입니다.오브젝트 파스칼 프로그래밍 언어로 부터 파생된 언어입니다오브젝트 파스칼(Object Pascal)파스칼에 객체지향 개념을 포함하여 발전시킨 프로그래밍 언어로 델파이 언어로 잘 알려져 있습니다. 파스칼(Pascal)- 1980년대와 90년대 초반에 걸쳐 널리 사용되었으며 교육용 언어였습니다.발표당시 아주 기본적인 컴퓨터 언어의 요소만을 가지고 있어 시스템을 직접 다루기엔 부족하였고 포인터를 사용한 구조적 프로그래밍을 특징으로 합니다 - 구조적 프로그래밍(structured programming): 구조화 프로그래밍으로도.. 더보기