본문 바로가기

작업/Programming

(28)
파이썬(python) 사용자 입력 방법 연습 (input) 파이썬에서 사용자 입력으로 사용하는 함수는 "input()"입니다. input() 함수를 사용하는 여러 방식에 대해 정리했습니다. 1. input() input() 함수는 사용자가 입력하는 값을 변수에 저장하고자 할 때 사용합니다. 입력되는 값은 무조건 문자(str) 형으로 받아들이는 특징이 있습니다. 그래서 입력으로 숫자(ex. 100, 555)를 입력해도 문자형이 됩니다. input() 함수는 큰따옴표(" ")를 기준으로 텍스트 입력이 가능합니다. 이는 프롬프트 화면으로 입력 전에 출력되어 사용자가 입력 전에 내용을 이해할 수 있도록 도와줍니다. 2. int(input()) 수치 데이터를 입력하려면 int() 함수를 적용합니다. int() 함수는 integer(정수) 자료형으로 변환하는 함수입니다. ..
파이참(pycharm) 설치 및 파이썬(python) 개발 환경 만들기 파이참(pycharm) 프로그램은 파이썬 언어로 개발하기 편하도록 만들어진 툴(tool)입니다. 언어를 잘 사용할 수 있도록 지원해주는 도구의 개념이기 때문에 직접 언어까지 제공하지는 않습니다. 그 말의 의미는, 파이참 프로그램이 있다고 하더라도 컴퓨터가 언어를 모른다면 프로그램은 아무런 소용이 없다는 것입니다. 그렇기 때문에 컴퓨터가 파이썬 언어를 알 수 있도록 언어를 먼저 설치하겠습니다. 1. 파이썬 언어 설치 www.python.org/ Welcome to Python.org The official home of the Python Programming Language www.python.org 해당 링크에 들어가셔서 파이썬 언어를 설치하시기 바랍니다. 그전에 파이썬 언어를 설치하시는 컴퓨터(또는 ..
C언어 가위, 바위, 보 시뮬레이션 perfect c의 12장에 있는 문제를 바탕으로 만들었습니다. 사용자가 가위, 바위, 보 중에서 입력한 값과 시스템이 자동으로 선택한 값을 비교하여 승, 패, 무승부를 가리는 프로그램입니다. #include #include //srand(), rand() #include //time() int main() { //랜덤 값 (난수) 생성 srand((unsigned int)time(NULL)); //랜덤 값을 바탕으로 0, 1, 2 중 하나 int sysN = rand()%3; int myN; printf("가위(0) 바위(1) 보(2) 중에서 하나 입력 : "); scanf("%d", &myN); //가위, 바위, 보 시스템 switch(myN){ case 0: if(sysN==0) { puts("당신..
C언어 특정 문자를 기준으로 문자열을 나누고 역순으로 출력 띄어쓰기가 포함된 문자열을 입력받고 입력된 값의 단어들만 따로 역순으로 출력시키는 코드입니다. (ex. hello world 입력 시 olleh dlrow 출력) char str[100]; printf("한 줄의 문장을 입력하세요 = "); fgets(str, sizeof(str), stdin); //문자 기준 자르기, char *strtok(char *String, char const *ch); char *pt = strtok(str, " "); //공백 문자가 있는 값을 포인팅 //자를 문자열이 더이상 없다면 NULL 반환 while(pt != NULL){ for(int i = strlen(pt)-1; i>-1; i--){ if(pt[i] == '\n') continue; printf("%c", pt..
C언어 문자열 역순으로 출력 문자열을 입력받고서 그 값의 역을 출력하는 코드입니다. char str[20]; printf("한 단어를 입력하세요 = "); fgets(str, sizeof(str), stdin); for(int i =strlen(str)-2; i>-1; i--){ printf("%c", str[i]); } 문자열은 문자들이 나열된 것이고, 배열로 접근이 가능하다는 것을 안다면 쉽게 적용 가능합니다. 문자열의 입력은 fgets() 함수를 사용했습니다. fgets() 함수는 총 3개의 인자를 받습니다. 1. 입력받은 문자열을 저장할 공간 2. 해당 저장 공간의 버퍼 크기 3. 입력 방식 (stdin = 키보드) 입력받은 문자열을 인덱스 0부터 순차적으로 저장되며 마지막은 '\0'의 값을 저장합니다. string.h 라이..
Perfect C 프로그래밍 연습 10장 9, 10, 11, 12 (재귀함수) 재귀 함수를 만들어서 사용하는 문제들로 구성되었습니다. 재귀 함수의 핵심은 정의된 함수 1개가 연속해서 호출되고, 결괏값까지 도출할 수 있어야 한다는 것입니다. 제공된 문제의 내용이 너무 어렵지 않아서 연습하기 좋았습니다. 문제 9. 1~n까지의 합 재귀 함수 int resum(int n); //함수 정의 //main() printf("1~20까지의 합 = %d", resum(20)); //재귀 합 int resum(int n){ if(n==1) return 1; return n + resum(n-1); } 1~n까지의 합을 구하는 재귀 함수는 int형 인자 1개를 받아옵니다. int형 인자는 n의 값에 해당하며 코드에서는 n = 20으로 하였습니다. 재귀 함수 구성에서 중요한 것은 끝맺음할 수 있는 값..
Perfect C 프로그래밍 연습 10장 1, 3, 4, 5번 해결 10장은 함수를 만들어 코딩을 하는 연습을 제공하고 있어요. 함수를 사용하다 보니 코딩이 상당히 쉬워졌네요. 후... 코드는 1번을 제외하고는 모두 main 부분을 생략하여 함수 정의, main 내부 구문, 함수 내용으로 코드를 올렸습니다. 문제 1. #include double inchtocm(double inch); //inch -> cm int main(){ //문제1 double value; //inch값 입력 printf("cm로 변환할 inch값 입력 = "); //scanf 형식에서 버퍼의 크기가 추가된 scanf_s 사용 scanf_s("%lf", &value, sizeof(double)); //출력 매개로 함수 사용 printf("%.2f inch는 %.2f cm 입니다.\n", valu..
C언어 행렬의 곱 구하기 3 x 2 행렬과 2 x 3 행렬을 곱한다고 한다면 결과로 3 x 3 행렬이 나오게 됩니다. A x B, B x C에서 처음 행렬의 열(B)과 다음 행렬의 행(B)이 같은 수여야 곱이 가능하며 곱의 결과로 A x C의 행렬이 나오게 되는 것입니다. 계산 방법은 처음 행렬에서는 행에 포함된 값들과 다음 행렬에서 열에 포함된 값들을 순서대로 곱하고 그 값들을 더하는 것입니다. // 행렬의 곱 int value1[][2] = {3, 5, 4, 2, 5, 7}; int value2[][3] = {3, 8, 2, 2, 4, 6}; int mul; //곱의 값 저장 // 3x2 와 2x3의 결과는 3x3 for(int i=0; i