47. 콘솔에서 두 정수(a,b)를 입력 받아 a와b가 같으면 1, 같지않으면 0 을 출력하라.

입력 : 1Line 으로 a,b가 공백을 두고 입력된다.

입력 범위 : -2147483648 ~ 2147483647

입력 예시

9 1

출력 예시

0

 

JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int flagValue = scan.nextInt();
		if(flagValue== scan.nextInt()) {
			System.out.println(1);
		} else {
			System.out.println(0);
		}
        scan.close();
	}
}

 

Swift 4.2

import Foundation

let line = readLine()
if line != nil {
    let split = line!.split(separator: " ")
    if split.count == 2, let a = Int(split[0]), let b = Int(split[1]) {
        print(String.init(format: "%d", (a==b)))
    }
}

 

 

이전 문제에서 부호만 바꾸었습니다.

https://codeup.kr/problem.php?id=1050

 

[기초-비교연산] 두 정수 입력받아 비교하기2(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용 ��

codeup.kr

 

 

 

 

 

48. 콘솔에서 두 정수(a,b)를 입력 받아 b가 a보다 크거나 같으면1, b가 a보다 작으면 0을 추렭하라

입력 : 1Line 으로 a,b가 공백을 두고 입력된다.

입력 범위 : -2147483648 ~ 2147483647

입력 예시

0 -1

출력 예시

0

 

JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int flagValue = scan.nextInt();
		if(flagValue <= scan.nextInt()) {
			System.out.println(1);
		} else {
			System.out.println(0);
		}
        scan.close();
	}
}

 

 

Swift 4.2

import Foundation

let line = readLine()
if line != nil {
    let split = line!.split(separator: " ")
    if split.count == 2, let a = Int(split[0]), let b = Int(split[1]) {
        print(String.init(format: "%d", (a<=b)))
    }
}

 

 

 

이전 문제의 소스에서 부호만 변경했습니다.

https://codeup.kr/problem.php?id=1051

 

[기초-비교연산] 두 정수 입력받아 비교하기3(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용 ��

codeup.kr

 

 

 

 

 

 

 

 

49. 콘솔에서 두 정수(a,b)를 입력 받아 두 값이 다르면 1 같으면 0을 출력하라.

입력 : 1Line 으로 a,b가 공백을 두고 입력된다.

입력 범위 : -2147483648 ~ 2147483647

입력 예시

0 1

출력 예시

1

 

Java

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int flagValue = scan.nextInt();
		if(flagValue != scan.nextInt()) {
			System.out.println(1);
		} else {
			System.out.println(0);
		}
        scan.close();
	}
}

 

 

Swift 4.2

import Foundation

let line = readLine()
if line != nil {
    let split = line!.split(separator: " ")
    if split.count == 2, let a = Int(split[0]), let b = Int(split[1]) {
        print(String.init(format: "%d", (a != b)))
    }
}

 

 

 

 

이전 문제에서 부호만 변경했습니다.

https://codeup.kr/problem.php?id=1052

 

[기초-비교연산] 두 정수 입력받아 비교하기4(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용 ��

codeup.kr

 

 

반응형

44. 콘솔에서 정수 한 개를 입력받아 그 두배를 출력하라.

입력 범위 : -1073741824 ~ 1073741823

입력 예시

1024

출력 예시

2048

Java

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		long value = scan.nextInt();
        scan.close();
		System.out.println(value << 1);
	}
}

Swift 4.2

import Foundation

let line = readLine()
if line != nil {
    if let value = Int(line!) {
        print(value << 1)
    }
}

 

시프트 연산 오랜만에 하네요.

솔직히 잘 기억도 안납니다.

저는 국딩이 아닙니다. 제 나이때 주변 애들은 전부 정보교육?인가 해서 한참 교과목으로 컴퓨터를 배우던때가 있습니다.

아 그리운 플로피디스크여~

아무튼 그때 교산지 강산지, 선생님의 왈 " 컴퓨터는 덧셈밖에못하는 바보야! "

그리고 시간이 흘러

저의 왈 " 선생님! 바보! "

컴퓨터는 곱셈연산, 그러니까 2진수의 시프트 연산으로 사람이 하는 곱셈과 유사한일을 할 수 있습니다.

주의점은 나열된 1과 0을 그대로 오른쪽 왼쪽으로 움직이는거라 예상치 못한 동작을 하기도합니다.

뭐 이런건 따로 검색해보세요

꽤나 덧셈 뺄셈 곱셈 나눗셈 연산을 재미지게 합니다.

기본적으로 C를 기반으로 작성된 문제이기때문에 이대로 가다보면 매크로연산정의하는 문제도 나오지않을까합니다.

아 그런거 싫은데

https://codeup.kr/problem.php?id=1047

 

[기초-비트시프트연산] 정수 1개 입력받아 2배 곱해 출력하기(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용 ��

codeup.kr

 

 

45. 콘솔에서 정수 두 개( a, b )를 입력받아 a 의 2^b 배를 출력하라

입력 : 정수 두 개가 공백을 두고 1line으로 입력된다. ( 입력 범위: a >= 0, b <= 10 )

입력 예시

2 3

출력 예시

16

Java

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int base = scan.nextInt();
		int exp = scan.nextInt();
        scan.close();
		if(base >= 0 && exp <= 10 ) {
			System.out.println(base << exp);
		}
	}
}

 

Swift

import Foundation

let line = readLine()
if line != nil {
    let split = line!.split(separator: " ")
    if split.count == 2, let base = Int(split[0]), let exp = Int(split[1]) {
        if base >= 0 , exp <= 10 {
            print(base << exp)
        }
    }
}

 

 

https://codeup.kr/problem.php?id=1048

 

[기초-비트시프트연산] 한 번에 2의 거듭제곱 배로 출력하기(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용 ��

codeup.kr

 

 

 

46. 콘솔에서 두 정수(a,b)를 입력 받아 a가 b보다 크면 1, 그외 라면 0 을 출력하라.

입력 : 1Line 으로 a,b가 공백을 두고 입력된다.

입력 범위 : -2147483648 ~ 2147483647

입력 예시

9 1

출력 예시

1

JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int flagValue = scan.nextInt();
        scan.close();
		if(flagValue > scan.nextInt()) {
			System.out.println(1);
		} else {
			System.out.println(0);
		}
	}
}

Swift 4.2

import Foundation

let line = readLine()
if line != nil {
    let split = line!.split(separator: " ")
    if split.count == 2, let a = Int(split[0]), let b = Int(split[1]) {
        print(String.init(format: "%d", (a>b)))
    }
}

 

 

 

bool형 변수는 사실 0 과 1 이다! 라는걸 보여주려는 문제인거같은데

JAVA에서 bool을 바로 정수형으로 보여주기가 어찌해야할지 모르겠어서 결국그냥 1,0을 써서 출력했네요.

swift 는 c베이스로 만들어진거라 바로 bool을 int로 변형이 가능했습니다.

 

https://codeup.kr/problem.php?id=1049

 

[기초-비교연산] 두 정수 입력받아 비교하기1(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용 ��

codeup.kr

 

 

 

 

 

 

 

 

기존 네이버 블로그에 있던내용을 옴기는 작업은 가장 먼저 하려고하다가 중간에 멈추고 미루고 미뤄

어느새 20년도 초여름에 다가왔습니다.;;

 

새롭게 시작했던 키보드만드는것도 어느정도 완결이 보여 뭐할까 고민하다가 

 

다시금 포스트 옴기기의 진행도를 늘려보려합니다.

반응형

이번에는 iOS에서 차트로 유명한 오픈소스인 Charts를 사용합니다.

 

퇴사하고나면 행복해하면서 천천히 다음직장을 찾을줄 알았는데

 

하루하루 게임으로 현실도피하기 바쁨니다.

 

공부용 서적을 엄청 사놨는데 거의 안봤네요

 

튜토리얼용 영상도 거의 하루꼴로 찍어 올려볼생각이였는데 왜 이렇게 됐을까요.

 

iOS는 거의 모든걸 인터넷으로 배웠기에 은혜를 값는 셈으로 나도 다르분이 참고할 만한걸 만들고 싶었는데....

 

아무튼 영상은 아직 유튜브에서 영상처리로 업로드중이라 추후 수정으로 이글에 올릴 예정입니다.

1/4

https://www.youtube.com/watch?v=X8LnNA50vOM&feature=youtu.be

2/4

https://www.youtube.com/watch?v=fFHZ5jjvjzg

3/4

https://www.youtube.com/watch?v=Jdiup0nIf18&t=17s

 

4/4

https://www.youtube.com/watch?v=BeC5Srvh96I&t=18s

영상 추가해보니 이 짧은내용을 5시간반정도 했네요..;;

한두달 안하다가 뭔가 하려니 이리도 버벅이게되네요

 

 

 

다음 편은 포폴용으로 토이프로젝트만들어볼 생각입니다.

했던건 튜토리얼1~4에 나왔던거랑 크게 다르지않을거같습니다.

 

메모앱을 만들생각이라....

 

서버연동으로 구글메모장 처럼

동기화가능하게 만들생각입니다.

 

계정도 엮어서 해봐야지

 

https://github.com/wiwi-git/Use-Charts

 

wiwi-git/Use-Charts

iOS Chart 사용 튜토리얼. Contribute to wiwi-git/Use-Charts development by creating an account on GitHub.

github.com

 

반응형
import pymysql


class DBController:
    host = 'localhost'
    port = 9999
    user = 'userID'
    pw = 'userPW'
    db_name = 'testDB'

    def __init__(self):
        print("__init__")
        self.conn = pymysql.connect(host=self.host, port=self.port, user=self.user, password=self.pw, db=self.db_name)
        self.curs = self.conn.cursor(pymysql.cursors.DictCursor)

    def create_connect(self, host=host, port=port, id=user, pw=pw, db_name=db_name):
        print("create connect")
        self.curs = self.conn.cursor(pymysql.cursors.DictCursor)
        self.conn = pymysql.connect(host=host, port=port, user=id, password=pw, db=db_name)

    def execute(self, query, args={}):
        self.curs.execute(query, args)

    def execute_one(self, query, args={}):
        self.curs.execute(query, args)
        row = self.curs.fetchone()
        return row

    def execute_all(self, query, args={}):
        self.curs.execute(query, args)
        row = self.curs.fetchall()

        return row

    def commit(self):
        self.conn.commit()

 

 

Flask 로 api 간단히 만들기 라는 글좀 따라해보다가 어디선가 긁어와서 살짝 수정해서 썻던 소스인데 기억이 안나서 출처는 없습니다.

 

init쪽에 conn이랑 curs생성하지않고( 해당 소스 지우고 ) 

 

클래스 만들어서 사용할때 crate_connect()호출해서 쓰는게 더 나아보이는데

 

여러모로 귀찮아서.. 그냥 집어넣었던거 같기도하고 애초에 있던거같기도하고

 

기억이 여로모로 애매하네요

반응형

'python' 카테고리의 다른 글

워드문서를 합치는 방법  (0) 2020.10.07

MariaDb,

 

관리자 계정으로 들어간다.

 

# 사용자 목록 확인

우선 사용자 목록을 확인해보자

 

전체적인 정보가 담겨있는 데이터베이스를 봐야하니

mysql db로 들어가자

 

user mysql;

 

이미 있는 계정이 궁굼하면

이 mysql db에 들어가있는 상태에서

select host, user from user;

라고 쿼리를 입력하면 아래와같이 호스트 / 아이디 로 나온다

 

 

 

# 사용자 생성

이제 id 는 test_id 접속 호스트는 localhost 비밀번호는 1234 로 계정을 생성해 준다하면

create user 'test_id'@'localhost' identified by '1234';

라고 입력하고 쿼리 ok가 나오면 성공이다

다시  목록을 확인해보면

아까 6개였던 표에서 7개줄로 변경되고 중간에 Localhost 에 test_id로 추가가되어있음을 확인 할 수 있다.

 

 

# 사용자 계정에 권한 추가하기 

계정을 생성해봤자 사실 이 시점에서는 아무것도 못한다.

그래서 계정에 할 수 있는 것에 대해 정의를 해줘야하는데

이때 권한을 어떠한 db에 대해 권한을 정의해준다.

 

테스트용도로 wiwi_blog_test 라는이름의 db를 미리 만들어주었고

이 db에 아까 만든 test_id계정의 권한을 주자

주려는 권한은 

select, insert, update, delete

이 네가지를 준다고하면 

 

grant select, insert, update, delete on wiwi_blog_test.* to 'test_id'@'localhost';

 

※ db명 뒤의(wiwi_blog_test의 뒤) 점(.) 하고 * 는 이 db에 있는 모든 테이블을 지칭한다.

 

쿼리입력후 쿼리 Ok가 뜨면 성공이다.

필요에따라 저 네개중 빼고 줄 수도 있다.

 

 

 

사실 이대로 접속해보려면 제대로 접속이 안된다.

이 권한변경에 대해 적용을 한다는 쿼리를 날려줘야한다( insert 후의 commit과 같은)

 

flush privileges;

이제 test_id로 wiwi_blog_test db의 검색,입력,수정,삭제를 할 수 있게 되었다!

 

localhost로 주었기에 물론 외부에서는 접속이 안된다. 하지만 이제 다른 db관리 프로그램으로 해당 db에 접근 할 수 있게 되어 gui환경으로도 편집 수정 확인을 할 수 있다!

 

# 사용자 계정에 주어진 권한 확인

제대로 권한이 들어갔는지 권한 확인을 하자면 

 

show grants for 'test_id'@'locahost';

 

wiwi_blog_test db의 모든 테이블에 대해 select, insert, update, delete가 되어있다고 잘 나온다 ㅎ 

 

# 계정 삭제

이제 이 계정을 삭제해보자 

drop user 'test_id'@'localhost';

 

 

역시 query ok가 뜬다면 성공한것이다

 

반응형

어느순간부터 mysql에서 수정시 update 문으로 user테이블 수정으로 비밀번호 수정이 안된다.

 

update user set password='user_id'@'host' identified by 'new_pw'

입력시 

COLUMN PASSWORD IS NOT UPDATEABLE 이라고 경고문이 뜬다.

 

 

 

기존 id가 wiwi이고 접속 호스트가 localhost 라면 이 계정의 비밀번호를 abcd1234로 변경한다하면

 

아래와 같이 하면된다.

 

우선 데이터베이스는 기존과같다.

 

root계정으로 접속한후

 

use mysql;

 

alter user 'wiwi'@'localhost' identified by 'abcd1234';

 

 

 

query ok 라고뜨면 끝이다 간단!

반응형

https://youtu.be/q7espFLVggQ

 

 

이번엔 다른 viewcontroller로나 class로 값을전달할수있는 NotificationCenter 사용 예제입니다.

 

탭바로 해봤는데 제 생각대로 잘되지않아 오래걸렸네요

 

사용한 소스는 아래와같습니다

https://github.com/wiwi-git/Use-NotificationCenter

 

wiwi-git/Use-NotificationCenter

swift, notificationcenter 튜토리얼 영상소스 . Contribute to wiwi-git/Use-NotificationCenter development by creating an account on GitHub.

github.com

 

반응형

별 다른 계획없이 시작하고 몇 달 쉬고 다시 코딩을 하려하니 갑작스레 막히는 부분들이 있습니다.

그런 부분도 그냥 영상에 있어요

 

별다른 편집툴이 없기도 하고, 귀찮기도해서 그냥 대부분은 안잘랐습니다.

 

자른부분은 중간에 화장실다녀온 시간과 이건 좀 보여드리면 위험하겠다싶은 내역부분은 잘랐습니다

 

나중에 이 영상을 바탕으로 텍스트로도 튜토리얼내역을 작성할 생각이긴한데.

 

솔직히 텍스트로 작성하는건 저번 튜토리얼1때 얼마나 귀찮고 시간이 오래걸리는 일인지 알아버려서 왠만해선 안할거같네요

 

https://www.youtube.com/watch?v=ASp2TFlNbPE&feature=youtu.be

 

 

타이핑한 코드는 깃헙에 업로드 되어있습니다.

 

https://github.com/wiwi-git/Use-RestApi

 

wiwi-git/Use-RestApi

rest api를 이용하여 앱에서 정보를 받거나 보내거나 하는 튜토리얼. Contribute to wiwi-git/Use-RestApi development by creating an account on GitHub.

github.com

 

 

flask를 이용해서 작은 rest api서버를 만들었는데

파이썬 자체를 잘 해보지않았고 저도 몇번 안해봐서 엄청 막혔네요 ㅋㅋ

 

파이참이라는 ide로 만들었고

그 이전에 이미 작성된 부분은 파이참으로 flask 웹서버 만들기 라는 강좌를 보고 따라한거라 영상에는 없습니다.

 

 

UI나 기능에 대해 어떻게 할지 상세히 생각하고 하지않고 그냥 일단 만들기시작한거라 도중 수정과 계획에 없던 커스텀한 팝업만들기도 해버렸네요.

 

값교환에 대해서는 영상에서는 꽤나 요상하게 한것같은데

다음영상에서 다룰 notification을 통해서 하는게 더 좋아보입니다.

 

별 생각없이 만들기도 했구요;; 

 

소스에대한 태클과 조언은 언제나 환영합니다

 

반응형

+ Recent posts