1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

#include <iostream>

#include <string>

using namespace std;

 

class Point {

    int x, y;

public:

    Point(int x, int y) { this->= x; this->= y; }

    int getx() { return x; }

    int gety() { return y; }

protected:

    void move(int x, int y) { this->= x; this->= y; }

};

 

class ColorPoint : public Point {

    string color;

public:

    ColorPoint(int x, int y, string color) :Point(x, y) {

        this->color = color;

    }

    void setPoint(int x, int y) {

        this->move(x, y);            // Point 에서 move 가 protected 니까 ColorPoint 에서도 접근 가능함

    }

    void setColor(string color) {

        this->color = color;

    }

    void show() {

        cout << this->color << "색으로 (" << this->getx()<<","<< this->gety()<< ")" << "에 위치한 점입니다.";

    }

};

int main() {

    ColorPoint cp(55"RED");

    cp.setPoint(1020);

    cp.setColor("BLUE");

    cp.show();

}

Colored by Color Scripter

cs

'C++' 카테고리의 다른 글

명품 c++ 7장 실습문제 2번  (0) 2019.06.05
명품 c++ 7장 실습문제 1번(2)  (0) 2019.06.05
명품 c++ 7장 실습문제 1번(1)  (0) 2019.06.05
명품 C++ 8장 실습문제 4번  (0) 2019.06.01
명품 C++ 8장 실습문제 1~2번  (0) 2019.06.01

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

#include <iostream>

#include <string>

using namespace std;

class Circle {

    int radius;

public:

    Circle(int radius = 0) { this->radius = radius; }

    int getRadius() { return radius; }

    void setRadius(int radius) { this->radius = radius; }

    double getArea() { return 3.14*radius*radius; }

};

 

class NamedCircle :public Circle {

    string name;

public:

    NamedCircle(int radius = 0string name = "") : Circle(radius) {

        this->name = name;

    }

    void setName(string name) { this->name = name; }

    string getName() { return this->name; }

    void show() {

        cout << "반지름이" << this->getRadius() << "인" << this->name;

    }

};

int main() {

    NamedCircle pizza[5];

    int big = pizza[1].getRadius();

    string big_pizza;

    cout << "5 개의 정수 반지름과 원의 이름을 입력하세요." << endl;

    for (int i = 0;i <= 4;i++) {

        int pizza_rad; string pizza_name;

        cout << i+1 << ">>";

        cin >> pizza_rad >> pizza_name;

        pizza[i].setRadius(pizza_rad);

        pizza[i].setName(pizza_name);

        if (pizza[i].getRadius() >= big) {

            big = pizza[i].getRadius();

            big_pizza = pizza[i].getName();

        }

    }

    cout << "가장 면적이 큰 피자는 " << big_pizza << "입니다.";

}

Colored by Color Scripter

cs

'C++' 카테고리의 다른 글

명품 c++ 7장 실습문제 2번  (0) 2019.06.05
명품 c++ 7장 실습문제 1번(2)  (0) 2019.06.05
명품 c++ 7장 실습문제 1번(1)  (0) 2019.06.05
명품 C++ 8장 실습문제 4번  (0) 2019.06.01
명품 C++ 8장 실습문제 3번  (0) 2019.06.01

1

2

3

4

5

6

7

8

9

#include <iostream>

using namespace std;

 

int main() {

    int R1, R2, S;

    cin >> R1 >> S;

    R2 = S * 2 - R1;

    cout << R2;

}

cs

1

2

3

4

5

6

7

8

9

10

11

12

#include <iostream>

using namespace std;

int main() {

    int num_a,num_b;

    int line_1, line_2, line_3, sum;

    cin >> num_a >> num_b;

    line_1 = num_a * (num_b % 10);

    line_2 = num_a * ((num_b - (num_b % 10)) / 10 % 10* 10;// 

    line_3 = num_a * ((((num_b - (num_b % 10)) / 10- ((num_b - (num_b % 10)) / 10 % 10)) / 10* 100;

    sum = line_1 + line_2 + line_3;

    cout << line_1 <<endl<<line_2 / 10<<endl<< line_3/100 << endl << sum;

}

Colored by Color Scripter

cs

으악



뷰를 다 지우래...


지우기 전 뷰



바꾼거 (class 기반)




IndexView 같은 경우 Album.objects.all() 을 object_list 에 넣어버려서 ctx 처럼 해가지고 html 로 보내버린다.


이렇게...






그리고 Class DetailView 에서 보면 

model = Album 으로 설정 해 놨다.

그러면 detail.html 로 갈 때 그 특정 오브젝트 ex) pk=3 인 오브잭트라 치면

Album -> album 으로 만들어서 album 안에 넣어준다.

그러면 그것을 detail.html 에서 쓰면된다.


매우 이상한 장고임.. 












url 을 html 에서 쓸때 name 을 이용한다.. 예를 들어 {% url detail ~~ %} 

그런데 다른앱에서 detail 이라는 name 있다면? 

그것을 방지하기 위해서 urls.py 에 appname 을 써준다! 그리고

{%  url music : detail %}


<urls.py 안에서>




<html 안에서>





404 erorr


shortcut 에 보면 좋은 것이 있다.


< get_object_or_404 사용하기 전 >





< get_object_or_404 사용한 후>


render 와 같은 shortcut 에 있다.






'Etc' 카테고리의 다른 글

제네릭 뷰  (0) 2018.08.13
Django URL 하드코딩하지 않고 쓰기 <20>  (0) 2018.08.12
Django Foreign Key 활용 <18>  (0) 2018.08.12
Django Foreign Key 에 Data 저장하기  (0) 2018.08.12
Django Http404 사용하기 <16>  (0) 2018.08.12

템플릿에서 변경 전 상태 (하드코딩)



- 5 번째 줄에 보면 path url 에서 받은( <int: album.id> ) album.id 값으로 url 이동이 된다.



템플릿에서 변경 후 상태




- {% %} 안에 url 써주고 url name 을 써준다 그 다음 'detail' url 안에 필요한 <int: album_id> 값을 album.id 로 넣어준다.


'Etc' 카테고리의 다른 글

제네릭 뷰  (0) 2018.08.13
Django Namespace and HTTP 404 Shortcut <21>  (0) 2018.08.12
Django Foreign Key 활용 <18>  (0) 2018.08.12
Django Foreign Key 에 Data 저장하기  (0) 2018.08.12
Django Http404 사용하기 <16>  (0) 2018.08.12

<앨범 클레스 만들고 저장>




- NEW 라는 인스턴스 생성하고 각각의 컬럼값을 넣어준다. 그 후 save() 하면 Album DB 에 값이 들어감.



<Album 클래스와 연결된 Foreign Key 인 Song 클래스 추가하는 방법>


- track 인스턴스 만들고 각각의 컬럼값 넣어준 뒤 저장한다. 그리고 song_set.all() 로 값을 보면 저장되어있다.



<create 함수를 이용해서 save 생략하고 저장하는 방법>



- 이렇게 하면 save() 와 인스턴스 생성을 따로 하지 않아도 됨!



창고 count() 함수



shell 창



- 먼저 Album.objects.get(pk=1) 으로 첫번째 앨범 가져옴. 그리고 song 인스턴스 생성한뒤 song.album 에 가져온 첫번째 pk=1 앨범을 넣어주고 save 한다



- album1 = Album.objects.get(pk=1) 처럼 변수를 이용했는데 이렇게 해도 괜찮지만 직접 song.album = Album.objects.get(pk=1) 해줘도 똑같다.


- 안에 값은 바꾸고 save() 해주면 바뀜

'Etc' 카테고리의 다른 글

Django URL 하드코딩하지 않고 쓰기 <20>  (0) 2018.08.12
Django Foreign Key 활용 <18>  (0) 2018.08.12
Django Http404 사용하기 <16>  (0) 2018.08.12
Django template 활용법 <14>  (0) 2018.08.12
백준 4344 임시  (0) 2018.07.10

views.py

from django.http import Http404
from django.shortcuts import render
from django.http import HttpResponse
from .models import Album


def index(request):
all_albums = Album.objects.all()
ctx = {
'all_albums': all_albums
}
return render(request, 'music/index.html', ctx)


def detail(request, album_id):
try: # 에외 처리
album = Album.objects.get(id=album_id)
except Album.DoesNotExist:
raise Http404("Album does nor exist")
return render(request, 'music/detail.html', {'album': album}) # ctx 대신 이렇게 쓸 수 도 있다

- django 의 http 안에 Http404 를 import 해준다. 그러면 찾고자하는 요소가 없을때 404 페이지를 띄울 수 있다.


- album = Album.objects.get(id=album_id)  -> url 에서 album_id 를 get 해서 id (pk) 값으로 넘겨줌. 그런데 id (pk)가 없으면 http404 에러를 일으키고 아니면 detail 을 render 해서 보여준다. 


- tyr~except 예외처리


- return render 에서 ctx 대신 직접 사용할 변수를 넣어준것. 

'Etc' 카테고리의 다른 글

Django Foreign Key 활용 <18>  (0) 2018.08.12
Django Foreign Key 에 Data 저장하기  (0) 2018.08.12
Django template 활용법 <14>  (0) 2018.08.12
백준 4344 임시  (0) 2018.07.10
백준 파이썬 1546  (0) 2018.07.10

+ Recent posts