본문 바로가기
안드교양 11주차 버튼으로 viewflipper 넘기기, 버튼 클릭하면 리니어 레이아웃이 넘어간다 viewflipper 메서드로 자동으로 넘기기, 멈추기, 앞뒤 뷰로 넘어가기 동작 가능 package com.example.aap; import androidx.annotation.MainThread; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import android.graphics.Color; import android.os.Bundle; import android.os.SystemClock; import android.view.View; import android.widget.ArrayAdapter; impor.. 2023. 11. 16.
11주차 버블 랜덤하게 생성해서 움직이고 클릭하면 터져서 작은 버블이 나옴 bubble package com.example.myapplication; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.PointF; import java.util.Random; public class Bubble { private int scrW, scrH; public boolean isDead; private Context context; private int speed; private PointF dir = new PointF(); private Ran.. 2023. 11. 16.
데베 퀴즈 대비 유저 생성, 권한주기, 테이블 생성 -- ho 라는 사용자 생성, 비밀번호는 1111(반드시 작은 따옴표로) create user ho@localhost identified by '1111'; -- test 스키마를 만들고 변경할 수 있는권한을 ho에게 준다 grant all privileges on test.* to ho@localhost with grant option; -- 테이블 만들기, check 옵션, 기본키 auto_increment, 외래키 생성할때 어떻게 하는지를 중점적으로 보기 create table publisher( pubno char(4) check(pubno like 'p___') primary key, pubname varchar(20) default '한양출판사' check(.. 2023. 11. 16.
10주차 실기, 오픈북인데 소스 복붙안됨, • 내부함수 예제 use madang; -- 내장함수fh 도서 테이블의 출판사의 가격 평균을 백원단위 반올림 select publisher, round(avg(price),-2) from book group by publisher; select publisher, truncate(avg(price),-2) from book group by publisher; -- 고객 테이블 주소에서 대한민국을 한국으료 변경해서 검색 select replace(address,'대한민국','한국') from customer; -- 같은 성을 가진 사람이 몇 명이나 되는지 성별, 인원수를 구하기 = 20000; update book set price = 50000 where bookid =.. 2023. 11. 10.
10주차 기말에 힙, 퀵, avl 59, 78, 65, 23, 7, 25, 52, 49, 99, 80 10개를 순차적으로 넣을 때 avl 트리 만드는 과정 • DFS 인접 리스트를 이용한 dfs 탐색 adj_list = [[2, 1], [3, 0], [3, 0], [9, 8, 2, 1], [5], [7, 6, 4], [7, 5], [6, 5], [3], [3]] n = len(adj_list) visited = [0] * n def dfs(v): visited[v] = 1 print(v,' ', end = ' ') for i in adj_list[v]: if visited[i] == 0: dfs(i) print("dfs") for i in range(n): if visited[i] == 0: dfs(i) 0~9 .. 2023. 11. 10.
데베기초 10주차 • 서브쿼리 다중 행 연산자 in, not in 두개 정도만 나온다 select * from employees e where e.salary like ( select salary from employees where last_name like 'De Haan'); select * from employees e where e.salary in(select min(salary) from employees group by department_id) order by e.salary desc; 다중 열 서브쿼리 select * from employees e where (e.job_id, e.salary) in (select job_id, min(salary) from employees group by job_id.. 2023. 11. 9.
안드교양 10주차 xml에서 시간, 날짜 등 디자인하기 CalendarView 2023. 11. 9.
모겜프 10주차 비눗방울 Bubble.java package com.example.mgp_lecture; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import java.util.Random; public class Bubble { public int w, h; public int sx, sy; public Bitmap bubble; public int x, y, bw; public Bubble(Context context, int sw, int sh, int px, int py) { w = sw; h = sh; x = px; y = py; Random rnd = new Rando.. 2023. 11. 9.
페이징 페이징을 사용하는 이유 - 목록이 100만개일때 100만개 전부를 select로 한번에 가져오는 것은 엄청난 부하가 걸린다 데이터베이스에서 데이터 양을 적당히 끊어서 가져오는 것을 페이징이라고 한다, 페이징에는 2가지 형태가 있다 Offset based paging - 페이지 번호를 찾아서 이동하는 페이징 select* from book order by likes desc limit 10 offset 0; 데이터를 10개씩 가져와서 보여주고 0개씩 건너뛴다 limit - 가져오는 데이터의 갯수, offset - 건너뛸 데이터의 양 페이지 x번에 대하여 한 페이지에 y개를 보여주기 select * from book order by likes desc limit y offset(x - 1) * y; Offs.. 2023. 10. 29.
조인, 서브쿼리 조금 더 알아본 내용 조인을 위해서는 기본키(PRIMARY KEY, PK)와 외래키(FOREIGN KEY, FK) 관계로 맺어져야 하고, 이를 일대다 관계라고 한다 조인은 두 개의 테이블을 서로 묶어서 하나의 결과를 만들어 내는 것을 말한다. INNER JOIN(내부 조인)은 두 테이블을 조인할 때, 두 테이블에 모두 지정한 열의 데이터가 있어야 한다. OUTER JOIN(외부 조인)은 두 테이블을 조인할 때, 1개의 테이블에만 데이터가 있어도 결과가 나온다. CROSS JOIN(상호 조인)은 한쪽 테이블의 모든 행과 다른 쪽 테이블의 모든 행을 조인하는 기능이다. SELF JOIN(자체 조인)은 자신이 자신과 조인한다는 의미로, 1개의 테이블을 사용한다. inner join - 교집합 outer join - 합집합 LEFT.. 2023. 10. 29.
9주차 조인, 서브쿼리 시험에 나오는 유형, 책 103p, 교집합 차집합 내용 다시 보자 -- 책을 한번도 안산 고객을 가져오기 select name from customer c where custid not in (select custid from orders) left outer join으로 customer의 데이터 전체와 orders에서 customer와 연관있는 데이터를 가져왔다 join은 on으로 조건을 표현한다 -- 책을 주문한 고객의 이름과 주문, 책을 출력 select c.name, o.saleprice from customer c left outer join orders o on c.custid = o.custid; 서브쿼리 - where절에 select문을 넣어서 조건을 만드는 것 -- 가격이 가장 비싼 책의.. 2023. 10. 27.
컴알 시험대비 1. 삽입정렬 알고리즘 코드 빈칸문제로 나온다 while 루프 버전 def insertion_sort(a) : n = len(a) for i in range(1,n): j = i -1; key = a[i] while j >= 0 and a[j] > key : a[j+1] = a[j] j -= 1 a[j+1] = key for 루프 버전 def insertion_sort(a) : n = len(a) for i in range(1,n): for j in range(i,0,-1): if a[j-1] > a[j]: a[j-1], a[j] = a[j], a[j-1] 쉘 정렬 4,2,7,1,9 리스트를 나눌 간격인 갭은 전체 리스트 길이 5 // 2 +1인 3으로 시작한다 {4,1}, {2,9}의 부분 리스트를 부.. 2023. 10. 27.
시험대비 리니어 레이아웃 자체는 gravity, 그 안의 컴포넌트는 layout_gravity를 사용한다 gravity 속성은 android : gravity = "right|bottom" 으로 두개를 조합하는 것도 가능하다 background는 그냥 background를 사용한다 radio그룹내의 라디어 버튼은 중복 선택 x 버튼같은 위젯은 backgroundTint 넣자.. 책내용 android:rotation="45" -------------------------------------------------------------- package com.example.compute2;//각자작성한 프로젝트명으로 반드시 변경해야 함 import androidx.appcompat.app.AppCompatActivi.. 2023. 10. 25.
데베교양 확인문제 2023. 10. 25.
모겜프 시험대비 안드로이드 역사 2005 구글이 안드로이드 인수, 2007년 OHA(open handset alliance) 컨소시엄 구성, 2007년 안드로이드 sdk 1.0 발표 최초의 안드로이드 폰 - HTC의 G1 애플리케이션 실행 단계 : java 소스 -> .dex파일 -> .apk 파일 안드로이드를 구성하는 컴포넌트 : 액티비티,서비스,broadcast receiver, content provider 액태비티 -> 화면, 액티비티가 모이면 어플리케이션이 됨 서비스 -> 백그라운드에서 실행되는 컴포넌트(ex - bgm) content provider - 데이터를 관리하고 다른 앱에 제공 인텐트 -> 안드로이드가 적절한 컴포넌트를 찾아서 실행 xml - 화면 디자인, SGML의 부분 집합으로 웹 상에서 텍스트 .. 2023. 10. 23.
데베교양 시험대비 select문, 문자타입함수, 숫자타입함수, NVL, DECODE 사용법 그룹함수, count, sum, avg, max, min erd 키와 제약조건 pdf 8 까지 시험범위 문자, 숫자 처리 함수 시험범위 그룹 함수 소문자, 대문자, 앞에만 대문자로 출력하기 select lower('Chanho_lee'), upper('chanho_lee'), initcap('CHANHO_LEE') from dual; substr- (문자열,시작인덱스,가져올자리수) concat - 결합 select substr('Chanho_lee', 8,3), replace('ChanhoLEE','Chanho','Hoshi'), concat('chanho','lee') from dual; instr - 문자열 시작 위치 리턴 lp.. 2023. 10. 23.
컴알 시험 1220 자료구조 객관식, 알고리즘 주관식 시험문제 알고리즘 수행시간 비교 안나옴 빅오는 안봐도 될듯 알고리즘 이론, 빈칸채우기, 쉘,퀵,힙 정렬 = gap and a[ j] < a[ j-gap]: #삽입 위치를 찾음 a[ j], a[ j-gap] = a[ j-gap], a[ j] #항목 이동 j -= gap print(' Gap =', gap, a) gap = gap//2 data = [5, 3, 8, 4, 9, 1, 6, 2, 7] print("Original :", data) shell_sort(data) print(" Shell :", data) 힙정렬 (파이썬의 힙은 최소힙이다) 힙정렬은 이진힙을 이용해서 하는 정렬이다 완전이진트리 : 모든 레벨의 노드가 채워져있고 마지막 레벨은 왼쪽부터 차있어.. 2023. 10. 20.
안드교양 7주차 레이아웃, 시험범위 시험범위 렐러티브 레이아웃 까지 ! 렐러티브 레이아웃으로 페이지 만들기랑, 위젯 속성(button - backgroundtint로 하는거나 edittext에는 힌트가 있고 등등 위젯 마다 다른 속성, 토스트메세지 이벤트로 텍스트 변경하는거 등등이 나온다) xml 화면 구성이나 이벤트 등등을 주의깊게 보자 리니어 레이아웃 정렬 RelativeLayout 시작은 좌상단, layout_alignParent방향 속성으로 위치 지정 가능, 리니어와 다르게 각각 위치시켜야한다 RelativeLayout을 위젯 id 기준으로 요소 찾기 base 기준으로 상하좌우에 요소를 정렬했다 기준 여러개로 만드는 렐러티브 레이아웃 실습 전화번호 화면 만들기 2023. 10. 19.
모겜프 7주차 볼륨 컨트롤러 과제 volumecontrollerview.java package com.example.MGP_LECTURE; import android.content.Context; import android.graphics.Canvas; import android.graphics.Paint; import android.util.AttributeSet; import android.view.MotionEvent; import android.view.View; import android.widget.ImageView; public class VolumeControllerView extends ImageView implements View.OnTouchListener { private double angle .. 2023. 10. 19.
데베시험대비 데이터 -> 정보 -> 지식 -> 지혜 -- 도서테이블의 도서 중 가격이 가장 비싼 책과 가장 저렴한 가격을 검색하시오, 2중 셀렉트문 잘 외워두자 select bookname, price from book where price = (select max(price) from book) or price = (select min(price) from book); -- 고객의 주소가 서울이거나 대전에 사는 고객의 이름과 주소를 검색하시오 select name, address from customer where address like '%서울%' or address like '%대전%'; where in 에서는 와일드 카드를 사용할 수 없다 쿼리문 복습, 일단 조인없는 부분만 create table publis.. 2023. 10. 18.