입력: 첫째줄에 비교할 정수의 개수 입력, 둘째줄에 공백으로 구분하여 정수하나씩 입력
출력: 평균(소수점첫째)출력하고 공백으로 구분하여 평균보다 큰 수의 개수를 출력
이 문제를 보고 처음 든생각이 분명 더 간단한 방법이 있을 것 같은데 생각이 나지 않아서 ..
그냥 새 리스트를 만들어서 넣고 반복문으로 갯수를 뽑아내자 였다.
count기능이나 이런것들이 존재할 것 같은데 .. 찾아보아야할 것 같다.
다른문제를 찾아보니 빈 list를 만드는 것이 아닌
count 변수를 새로만들어 여기에 +=1 을시키는 방법도 있다
나는 왜 리스트로 했을까 :),,,,
n = int(input())
a = list(map(int, input().split()))
b = []
average = sum(a)/n
print("{0:.1f}".format(average), end = " ")
for i in a:
if i > average:
b.append(i)
print(len(b))
일단 문제 자체가 등차일지 등비일지 input 된것을 통해서 판단하라는 조건
네개의 수만들어갈 것이라는 제한된 조건이 있었다.
출력은 5번째 숫자를 요청했다.
처음에 두번째 조건만 아니더라도 List로 만들어 조건식을 통해 조건을 건 뒤에 뽑아내면 될 것 같았는데
변수를 네개로 하자니 하나씩 조건을 다 적어줘야했다.
근데 답이 아니란다 ㅇㅅㅇ..
이렇게하면 10개의 테스트 케이스중 하나가 걸려버린다.
a,b,c,d = map(int, input().split())
if b-a == c-b and c-b == d-c and d-c == b-a:
print(int((c-b)+d))
elif b//a == c//b and c//b == d//c and d//c == b//a:
print(int(c//b*d))
피라미드 별을 출력하는 문제이다. 예전에도 풀어본적이 있어 가르쳐준데로 2중반복문을 쓰지 않고
그냥 반복문하나에 꾸겨넣어서 풀면 될줄 알았다
나의 오만이었다..
n = int(input())
for i in range(1,n+1):
print(' '*(n-i), '*'*(2*i-1))
입력이 5일때 출력되는 별의 갯수
*
***
*****
*******
*********
내가 시도한 식으로 나온 갯수는 이렇다
아니 뭐가 다르지 여튼 이렇게 오답이되어 문제풀이를 봤다.
*
***
*****
*******
*********
문제에서 요구하는것은 이중반복문에 조건을 걸어 풀어내는 것이었는데
아래와 같이 각각의 조건을 걸었다.
일단 Reversed를 이용하여 Range 를 n-1 부터 받아왔고 피라미드의 반을 받아왔다.
n = int(input())
for i in range(n):
for j in reversed(range(n)):
if j > i:
print(' ', end = "")
else:
print('*', end = "")
for j in range(n):
if j < i:
print('*', end ="")
print()
먼저 시작을 위해 아래의 코드를 import해와야한다.
import turtle as t
t.shape('turtle')
아래와 같은명령어로 명령을 실행할 수 있다.
명령어를 이용하여 n 각형 만들기(반복문사용)
import turtle as t
n = int(input())
t.shape('turtle')
for i in range(n):
t.forward(100)
t.right(360/n)
t.mainloop()# idle에서는 사용하지 않아도 화면창이 유지되나 vscode에서는 미작성시 금방 화면창 사라짐
이렇게 공통된 부분을 일반화 하여 원하는 결과를 얻어내는 과정이 프로그래밍이며
컴퓨테이셔널 씽킹이라고 한다
그렇단다..
여기도 html canvas에 쓰이던 방식의 코드가 있다.
예제를 보자
위에 작성하였던 다각형 만들기에 begin_fill과 end_fill그리고 t.color('color')를 추가한것이다.
import turtle as t
n = int(input())
t.shape('turtle')
t.color('blue')
t.begin_fill() # 색칠시작
for i in range(n):
t.forward(100)
t.right(360/n)
t.end_fill() #색칠 끝
t.mainloop()
아래는 작성된 예제의 출력물이다.
터틀의 shape에는 'arrow', 'turtle', 'circle', 'square', 'triangle', 'classic' 등을 지정하여 여러 가지 터틀 모양을 사용할 수 있습니다. 특히, t.shape()와 같이 shape를 그대로 호출하면 현재 모양을 알아낼 수 있습니다.
라고 한다.
길이와 갯수를 입력하여 n각 별을 만들어 주는 코드이다.
별로 특별한것이 없으니 자세한 이야기는 pass
import turtle as t
n, line = map(int,input().split())
t.shape('turtle')
t.speed('fastest')
for i in range(n):
t.forward(line)
t.right((360/n)*2)
t.forward(line)
t.left(360/n)
t.mainloop()