프로그래밍 44

[파이썬] 23.12.18 문제 풀이

문제 1: 스터디 날짜 정하기 1. 날짜는 무작위 2. 1일부터 3일까지는 제외, 월 별 일수가 다르므로 28일 이내로 정할 것 (4일부터 28일까지 무작위로 설정) from random import * day = randint(4, 28) # day = randrange(4, 29) # randint와 randrange의 차이점: randint는 끝 숫자를 포함하여 랜덤수를 구하지만 randrange는 끝 숫자를 제외한 랜덤수를 구한다. # randint는 28 이하까지 랜덤 수를 구하고 randrange는 29 미만까지 랜덤 수를 구한다. print ("오프라인 스터디 모임 날짜는 매월 " +str(day)+ "일로 선정됐습니다.") 문제 2: 연산자를 이용해 온도 단위를 변환하는 프로그램 만들기 섭..

파이썬 2023.12.18

C프로그래밍 23.12.17 회원가입 수정

오늘은 회원가입 시 아이디가 있으면 동일한 아이디가 있다는 안내문구를 출력할 수 있게 수정하였다. 기존에는 동일한 아이디가 있어도 회원가입이 진행되었지만 수정한 이후에는 동일한 아이디가 있으면 바로 운내문구를 출력하고 return1;로 코드를 종료할 수 있게 하였다. 메인메뉴가 어느정도 프로그램으로써 완벽해지면 로그인 이후의 화면을 구현해봐야겠다. void signUp() { struct Member newMember; printf("아이디 입력: "); scanf_s("%s", newMember.username, sizeof(newMember.username)); for (int i = 0; i < memberCount; i++) { if (strcmp(newMember.username, members..

C 프로그래밍 2023.12.17

C프로그래밍 2023.12.16 데이터 저장

오늘은 회원가입 프로그램의 업데이트를 진행했다. 기존에 되지않던 회원정보를 저장하는 것이였다. #include #include #include #include #include #include enum userInputNum { input_SignUp = 1, input_Login = 2, input_Admin = 3, input_Exit = 4 }; struct Member { char username[50]; char password[50]; char checkPassword[50]; }; struct Member members[100]; int memberCount = 0; void sleep() { printf("정보 확인 중입니다. 잠시만 기다려주세요.\n"); Sleep(5000); system..

C 프로그래밍 2023.12.16

C프로그래밍 2023.12.15 로그인 프로그램 코드 수정 및 변화

오늘은 windows.h 헤더파일을 이용하여 로그인 프로그램을 조금 수정하였다. 프로그램 실행 시 안내를 하여 실행을 할지, 종료를 할지 선택하게 하였다.예를 선택하면 프로그램이 실행되고, 아니오를 누르면 프로그램 종료가 된다. 또한 기존 프로그램에서 회원가입과 로그인 시 회원 정보 확인 차 보여주기식으로 딜레이를 주었고, 깔끔한 화면을 유지하기 위해 system("cls");를 추가하였다. 딜레이는 Sleep로 하였고, 5초 후에 system("cls") 함수가 작동되니 한결 더 깔끔한 느낌이다.그리고 프로그램 종료 시 안내문구가 한번 더 출력되고 종료된다. 뭔가 windows 헤더파일을 사용하니 프로그램 느낌이 조금 나는 것 같기도 하다. 뭔가 응용하여 사용하면 재미있게 작성할 수 있을 것 같지만 취..

C 프로그래밍 2023.12.15

2023.12.15 새로운 프로젝트 도전

오늘은 퇴근 후 C언어로 만들만한 프로젝트가 무엇이 있을까 찾아보게 되었다. 대부분 학생들의 프로젝트가 많다보니 게임 관련 프로젝트가 많았지만 게임 개발은 취업하는데 큰 도움이 되지 않을 것 같고, (혼자만의 재미라면 모를까) 다른게 뭐가 있을까 찾아보다가 문득 떠오른 부분이 있었는데 C언어는 하드웨어와 밀접한 프로그래밍이라고 알고 있는데 C언어로 컴퓨터를 제어할 수 있지 않을까? 생각이 들었다. 그렇게 프로젝트의 주제를 선정하게 되었다. 일단은 간단하게 알림창을 띄우는 것부터 시작하여 코딩으로 간단하게 제어판을 열어본다던지, 프로그램 도중 문제가 생겼을 때 경고창을 사용자에게 보여주는 그런 부분으로 활용도 가능할 것 같고, windows.h를 활용하여 여러가지 테스트를 할 생각이다. 당장 테스트 할 하..

C 프로그래밍 2023.12.15

리눅스 C프로그래밍 23.12.12

오늘 퇴근 후 리눅스로 회원목록보기 구현 성공하였다. 테스트로 아이디를 4개 생성 후 회원목록보기로 비밀번호 입력하니 정상적으로 출력되었다. 비밀번호 역시 getpass 함수로 작성하였고, C언어 독학 후 처음으로 만든 프로그램이 완성되었다. 다음 프로젝트는 지금 프로젝트를 이어서 뭔가를 계속 만들지, 아니면 새로 만들어서 다른 함수를 이용하여 개발할 지 생각중이다. 프로젝트는 끝났으니 프로그래머스 사이트를 이용하여 C언어 공부하는 것도 나름 프로그래밍 기술을 익히는데 도움이 될 것 같기도 해서 이만 쉬고 내일 생각해봐야겠다. &나의 미래에 대한 고민 30대에 개발자로 취업하기 위해서 늦게 공부를 시작했고 올해 꼭 IT 계열로 취업해보고자 하는 마음에 23년 4월에 정보기기운용기능사를 취득하였다. 개발분..

C 프로그래밍 2023.12.13

리눅스 C프로그래밍 23.12.11

오늘은 퇴근 후 리눅스로 회원가입 프로그램 프로젝트를 이어서 시작하였다. 오늘은 새로운 코드를 알게되었다. 비밀번호 보안을 위해 getpass함수를 사용하고 싶었고, Visual Studio에서 사용했던 것처럼 1차와 2차 비밀번호 비교 후 일치하면 회원가입 성공이 되고 다르면 실패가 되게 구현하고 싶었다. 회원가입 성공 후 리스트로 아이디와 비밀번호 저장을 하고 싶었고, 로그인 시 가입되어있는 아이디와 비밀번호를 찾아 비교 후에 로그인 성공과 실패를 작동시키고 싶었다. 그래서 오늘 알게 된 코드는 비밀번호를 getpass함수로 사용자가 입력한 비밀번호를 구조체에 저장하는 코드인데 strncpy를 이용하는 것이다.//예제 //구조체 test로 생성 struct test { char Password[10]..

C 프로그래밍 2023.12.11

C프로그래밍 23.12.10

#include #include #include #include enum userInputNum { input_SignUp = 1, input_Login = 2, input_Admin = 3, input_Exit = 4 }; // 회원 정보를 저장하기 위한 구조체 struct Member { char username[50]; char password[50]; char checkPassword[50]; }; // 전역 변수로 회원 정보 배열 선언 struct Member members[100]; int memberCount = 0; void clearInputBuffer() { //사용자가 문자열 입력 시 무한루프 방지 int c; while ((c = getchar()) != '\n' && c != EO..

C 프로그래밍 2023.12.11