html에 대한 게시글들은 최종적인 html 결과물을 보여드리고 어떻게 만들어가는지를 설명해드릴꺼예요.

눈으로 하는 코딩 말고!! 직접 타이핑하는 코딩을 하시면 실력향상에 무척이나 도움이 된답니다.^^7


기본 태그 소개


<table>

표 형태의 데이터를 표시하는 데 사용되는 태그이다.

<tr>

Table Row의 약자. 하나의 행을 표현한다.

<td>

Table Data의 약자. 행 안의 데이터를 표현(하나의 셀이라 봐도 무방)

<th>

Table Header의 약자. 테이블 열제목. 첫 번째<tr>~</tr> 사이에 위치한다.

<caption>

테이블의 제목을 삽입하는 태그.

border 속성

테이블에 경계선을 만드는 속성

colspan 속성

열을 병합한다.

rowspan 속성

행을 병합한다.



안녕하세요 정선생이예요~ 이번 게시글에서는 표를 표시해주는 테이블 태그에 대해 알아볼꺼예요.

테이블은 초기의 웹페이지에서는 전체 페이지 레이아웃을 지정할 때 많이 사용했어요.

그렇지만 HTML5로 넘어오면서 부터는 단순히 표를 표현 할 때만 사용하는 것 같아요.



오늘의 결과물입니다!!



결과물의 코드예요.


일단 표는 <table>~</table> 로 표현을 합니다.

그리고 각 하나의 행을 표현해주는 태그는 <tr>~</tr>예요.

하나의 행을 표시했다면 그 행에 데이터를 넣어줘야겠죠? 그 데이터를 넣게 해주는 태그는 <td>~</td>예요.


그렇다면 기본적인 틀은 아래와 같겠죠?

<table>

    <tr>

        <td>데이터!!!</td>

    </tr>

</table>


그리고 table 태그 속에서 속성이 몇 가지가 있는데 자주 쓰이는 것을 소개해드릴꺼예요. ( 그렇지만 css로 정의하는 것이 원칙이예요. )

<table border=?> 이 속성은 테이블(표)의 라인, 즉 경계선을 얘기해요. 이 경계선 크기를 ?로 설정해주겠다는 것이예요. ?에는 숫자가 들어가요.

<table width=?> 이 속성은 표 전체의 가로길이를 ?로 지정하겠다. 이구요

그렇다면 세로도 있겠죠? <table height=?> 예요. ^^


그리고 테이블에서 가장 중요한 내용!!

rowspan 속성과 colspan 속성이예요.

rowspan은 현재 위치에서 아래로 가면서 행을 합쳐버려요. 예제를 봐보시면 아하! 하실꺼예요

colspan은 rowspan의 반대니까, 열을 합쳐버리는거겠죠? 이건 아래로 갈 수 없으니 현재 위치에서 오른쪽으로 가요.

셀들을 합친다는 얘기를 병합한다. 라고해요. 엑셀류에서 많이 쓰는 용어죠? :)


각 셀들에 다른 태그들을 넣을 수도 있어요.

예를들면 사진을 넣을 수도 있죠.


<table>

    <tr>

        <td><img src="경로"></td>

    </tr>

</table>


리스트도 가능하고, 추후에 배울 비디오라던지, 오디오라던지, 등등. 다른 태그들을 사용 할 수 있어요.

활용 할 수 있는 부분이 되게 많죠?? 그만큼 기본적인 구조만 잘 알아두면 어디든 활용 할 수 있다는 사실!




테이블은 여기까지 준비해봤어요. 어렵지 않은 부분이라 직접 코딩 해보면서 결과물 확인하시면 금방 이해하실거예요!!

모두 고생하셨습니다 ^^7





게시글을 보시다가 궁금한 내용, 이게 맞나? 하는 내용, 이건 틀렸어!하는 내용들은 과감하게 댓글 달아주시면 감사하겠습니다.


이론적인 내용에 대한 궁금증은 검색을 통해 궁금증을 해결하는 것이 좋아요!!

실습적인 내용에 대한 궁금증은 최대한 생각을 해보고 검색을 하는 것이 좋아요!!

'WEB > HTML' 카테고리의 다른 글

[HTML] 리스트, 링크 관련 태그  (0) 2018.04.24
[HTML] 텍스트 관련 태그  (0) 2018.04.08
[HTML] 문서편집기  (0) 2018.04.06
[HTML] 기본 구조  (0) 2018.04.06


눈으로 하는 코딩이 아닌! 직접 타이핑하는 코딩은 실력 향상에 엄청난 도움이 됩니다.




안녕하세요! 정선생이예요. 오늘은 반복문에 대해서 알아볼거예요. 조건문과 더불어서 중요한 부분이고 상당히 많이 쓰여요.

표현 방법도 상당히 많아서 모든 부분을 알려드리기는 사실상 불가능하다고 판단해서 교재와 같은 곳에 나온 방법으로만 설명드리려고 해요.

그러면 시작할게요 :)



반복문이 일단 무엇이냐? 반복을 하는 문. 명령문이라고 생각하면 되요.


예제를 통해서 반복문의 필요성을 알아볼까요?

printf("*****\n");
printf("*****\n");
printf("*****\n");
printf("*****\n");
printf("*****\n");


이 문장의 실행 결과는 다음과 같겠죠?

*****

*****

*****

*****

***** 


같은 문장을 5번을 반복해서 썼어요. 제가 다음 할 말 예상 되시나요? :0


반복문이라는 것은 동일한 작업들을 n번 반복해주는 것이구나.

물론 반복문 속에 조건문을 넣어서 동일한 작업들을 하지 못하게 할 수도 있기는 해요.


반복문의 종류에는 크게 3가지가 있어요.

while, do~while, for


종류의 구조를 알아보기 전에 많이 사용하는 반복문 변수가 있어요.

i, j, k 정도?

예전부터 습관처럼 굳어져서 사용하게 된 것 같아요.

흔히 반복문 카운터를 위한 변수라고 보시면 되요.


while문 구조부터 먼저 볼게요.


i를 1로 초기화를 해주고

while(i <= 10)을 만났네요

이 말은 i가 10 이하인 동안 다음 블록 구문을 실행해라.

라는 뜻이예요! 써져 있는 숫자는 프로그램이 실행되는 순서를 쓴거예요

1번으로 i 초기화, 2번으로 조건을 비교해보고 True니까 3번을, 그리고 4번으로 가서 다시 조건 비교하고 5번, ...

이런식으로 반복되는 구조를 가지고 있어요.




다음으로는 do~while 문인데 이것은 일단 한 번 실행해라! 그리고 조건을 비교해라. 인거예요.

do{ ... } 일단은 실행해라.

}while(i < 10);  'i가 10보다 작아?' 그러면 다시 이 블록 구문의 처음으로 돌아가서 실행해라.

이해 되셨나요?

do~while 에서는 while(조건);    ; 꼭 붙여주셔야해요!! :)



마지막으로 반복문 중에 제일 많이 쓰지 않을까 생각되는 for문이예요. 솔직히 저도 for문이 더 편해서 for문을 많이 사용합니다

기본 구조는 아래와 같아요

for(초기값 ; 조건 ; 증감){ ... }

세미콜론을 기준으로 3가지로 나뉘어졌네요.


while문과 비교를 해보면서 보시는게 이해가 좀 빠를꺼예요.


그렇다면 for문을 while문으로, while문을 for문으로 바꿀 수 있겠죠?

당연 do~while도 가능 합니다.


다음으로는 다중 반복문을 알아볼거예요.

반복문 속에 반복문을 넣는 것이죠

보통의 코드는 다음과 같아요



위 코드는 행렬을 생각하시면 편해요.

첫 번째 반복문은 줄 바꿈을 해주네요. ( 행을 표현 ) [ i = 0 ~ 5보다 작은 즉 4까지의 줄바꿈(5번의 줄바꿈) ]

두 번째 반복문은 * 를 출력시켜주네요. ( 열을 표현 ) [ j = 0 ~ 4까지 * 를 출력(5개의 출력) ]

그런데 두 번째 반복문은 첫 번째 반복문의 블록 구조 속에서 실행이 되네요.

이 말은 i = 0 일때 j = 0~4까지 * 출력한 후에 줄 바꾼 다음

i = 1이 되고 j = 0~4까지 * 출력하고 줄 바꾸고 ...

...

i = 4까지해서 다음과 같은 출력이 나오겠네요.

*****

*****

*****

*****

***** 


그렇다면

*****

****

***

**

*

*

**

***

****

*****

이런 출력도 만들 수 있겠죠? 다양하게 출력을 만들수가 있어요. 피라미드, 모래시계, 등등 많은 모양을 만들어 볼 수 있답니다.

반복문과 친해지는(?) 예제들 중 하나죠 ㅎㅎ



오늘 준비한 반복문은 여기까지예요.

생각보다 어렵지는 않아요. 특히나 반복문은 예제들을 많이 풀어보면 풀어볼수록 매력을 느낄 수 있을꺼예요! :)



오늘의 문제!

 문제

정선생은 오늘 배웠던 반복문을 이용하여 직각 삼각형을 만들어 보고 싶어한다. 키보드로 입력 받은 숫자가 변의 길이를 뜻한다.

 입력

3

 출력

 ***

  **

   *

 입력

5

 출력

 *****

  ****

   ***

    **

     *


힌트를 드리자면 반복문의 종료 조건을 입력받은 숫자까지 범위를 설정하면 되겠죠?

for( i = 0; i < n; i++){ .. }


 문제

사용자가 키보드로 숫자 하나를 입력을 하면 1부터 해당된 숫자까지의 홀수들과 합을 더하는 프로그램을 작성하라.

(단, 입력하는 숫자는 10 이상이라고 가정한다. 그 이하를 입력 할 경우는 프로그램을 종료한다.)

(추가로, 그 이하를 입력 할 경우에 대한 조건은 풀어보고 싶은 분들만 하길 바람)

 입력

 15

 출력

1 + 3 + 5 + 7 + 9 + 11 + 13 + 15 = 64

홀수인지 짝수인지를 판별하는 방법 중 하나가 % 연산을 하는 거예요. %연산은 나머지를 구해주거든요

현재 숫자에 % 2 를 했을 때, 1이 나오면 (   ), 0이 나오면 (   ) 겠죠?



반복문 문제는 너무너무 많아요. 응용하기도 쉽고.. 이후에 배우는 내용에서 추가적인 반복문 문제가 많이 나와요! :)






게시글을 보시다가 궁금한 내용, 이게 맞나? 하는 내용, 이건 틀렸어!하는 내용들은 과감하게 댓글 달아주시면 감사하겠습니다.


이론적인 내용에 대한 궁금증은 검색을 통해 궁금증을 해결하는 것이 좋아요!!

실습적인 내용에 대한 궁금증은 최대한 생각을 해보고 검색을 하는 것이 좋아요!!

'Programming > C' 카테고리의 다른 글

[C] 재귀함수(Recursion)  (0) 2018.05.22
[C] 함수  (0) 2018.05.15
[C] 조건문  (0) 2018.05.04
[C] 변수와 형식지정자  (0) 2018.04.30
[C] 기본 입/출력  (0) 2018.04.24

눈으로 하는 코딩이 아닌! 직접 타이핑하는 코딩은 실력 향상에 엄청난 도움이 됩니다.




안녕하세요! 정선생이예요. 오늘은 조건문에 대해서 알아볼거예요.


조건문에 들어가기에 앞서 조건이 무엇인지를 알아봐야겠죠?

조건은 Condition 이라고도 표현을 하구요.

보통 조건에 대한 결과값은 참(True)과 거짓(False)이 나와요.

조건이라는 것 자체는 비교를 한다고 생각하면 되겠죠? 같은지, 다른지, 이상인지, 이하인지, ... 등등

x ( ) y 에 대해서 ( ) 에는 다음과 같은 값들이 들어갈 수 있어요.(써드린게 끝은 아니고 더 있어요)

  1.     <        x가 y보다 작다

  2.     >        x가 y보다 크다

  3.    <=       x가 y보다 작거나 같다.

  4.    >=       x가 y보다 크거나 같다.

  5.     !=       x가 y랑 같지 않다.


이 외에도 몇 가지 더 있답니다. 그러나 이 게시글에서 다루지는 않을거라서 넘어가도록하죠!


조건에 대해서 이해를 하셨다면 조건문으로 넘어가보죠.


조건문의 종류에는 크게 두 가지가 있어요. if와 switch.

if는 만약~라면 이라는 뜻을 가지고 있어요. 사용법은 if(조건){ ... }이예요.

if(10<30) 이라고 작성이 되어있으면 10이 30 미만이면~ 인거겠죠?

조금 더 깊게 가볼까요

int x = 10;
if(x < 30){
    printf("x가 30 미만입니다.\n");
}

정수형 변수 x에 10을 대입해놓고 조건 비교를 하네요

x(현재 10)이 30보다 작습니까? 이 조건이 참(True)이라면 "    x가 30 미만입니다.    " 가 출력이 되겠죠?

조금 더 생각보면 이런 생각을 하게 되요. 조건이 거짓이 되면 30 이상이라는 출력 구문을 만들고 싶다..

이런 생각 들어야해요!!!! 

이럴 때 쓰이는 구문은 if ~ else 구문이예요.

if(조건) { ... }

else { ... }


if에서 쓰이는 else는 '그게 아니면'으로 해석하면 이해하기 쉬워져요

if(조건){ ...1 } // 만약 조건이 참이면 ...1 을 실행하고

else{ ...2 } // 그게 아니면 ...2 를 실행한다.


어때요? 쉽죠? ㅎㅎ


여기에서 또 추가가 될 수 있어요. if문의 최종판??

if(조건){ ...1 }

else if(조건){ ...2}

else{ ... }


어느정도 추리가 가능하시겠죠?!

if(조건) -> 만약 조건이 참이면 1을 실행하고

else if(조건2) -> 그게 아니면서 만약 조건2가 참이면 2를 실행하고

else -> 그것도 아니면 3을 실행한다.


else if(조건)는 여러개가 들어갈 수 있어요. if ~ else if ~ else if ~ ... ~ else ~


아래 코드를 보시고 이해하실 수 있으면 됩니다!!

int x = 10;
if(x < 30){
    printf("x가 30 미만입니다.\n");
}
else if(x < 20){
    printf("x가 20 미만입니다.\n");
}
else{
    printf("x가 30보다 크거나 같습니다.\n");
} 


다음으로 switch 문이 있어요

switch(?){
  case 1:
    ...
    break;
  case 2:
    ...
    break;
  case 3:
    ...
    break;
  ...
  default:
    ...
    break;
}

가 기본 구문이예요. 한 줄씩 해석해봅시다.

switch(?)

왜 ? 로 표시를 했냐면 여기에는 변수 하나가 들어가거든요. 문자형 변수(char)나 정수형 변수(int)가 대표적이예요. 이 외에는 넣어본 기억이 저는 없네요. :(

아까 if문의 예시에서의 변수 x를 넣는다고 가정하고 쭉 설명 드릴게요.

switch(x)가 되겠네요


결국 switch문은 x 변수를 사용해서 case에 맞게 실행을 하겠다. 라는 소리예요

case ?: ... break;

여기에서 사용한 ?는 조건이 들어가요. 보통은 단일 문자, 숫자예요.

일정 범위(<30)는 들어갈 수 없어요! case <30: 이 안된다는 얘기입니다! 문자열의 경우도 들어갈 수 없어요. case == "Jeong"; 도 안됩니다!

이어서 말씀드리면 변수 x가 1이면 case 1: ~ 을 실행하는거예요.


처음보는게 있네요? break;

이 명령어는 지금 하고 있는 블록구문( {, } )을 빠져나간다. 라는 뜻이예요.

[현재는 switch(){ ... break; ... } 이렇게 되어있죠? switch()블록에 쌓여있으니까 이 switch() 구문을 빠져나간다. 라는 소리가 되요.]



프로그램 진행 순서예요! 이해 되셨나요?! :)



자 그렇다면 다시 돌아와서

x가 3이면 case 3: 을 실행해요

case로 작성이 안되어있는 숫자는 default: 구문이 실행이되요. 

x가 4였다면 default로 이동을 하는거죠.

default는 모든 case를 작성하고 맨 마지막에 작성해요. 프로그램의 진행 순서는 순차처리 방식이라고해서 위에서 아래로 이동을 합니다.

그래서 default case에서는 break; 를 생략해도 된답니다! :) default가 마지막에 써있기 때문이예요.



조건문에 대한 설명은 여기서 마치도록 할게요. 다음의 문제를 한 번 풀어보세요~!


 문제 :

정선생은 현재 3과목 점수의 평균을 이용하여 등급을 확인해보고 싶어한다. 다음의 프로그램을 작성하라.

평균이 90점 이상이면 "A", 80점 이상이면 "B", 70점 이상이면 "C", 그 외에는 "F"로 작성한다.


 입력 :

C언어 점수는? 90

JAVA 점수는? 70

HTML 점수는? 90


 출력 :

평균 점수는 83입니다.

따라서 등급은 B입니다.


쌤요!!!! 평균은 실수형인데 어떻게 할까요? 

=> 정수형으로 출력하시면 됩니다. 실수형 타입을 설정 안하셔도 되요. ^^ 데이터 타입에 집중하라는 문제가 아니예요!!!


예시는 다음과 같아요


 문제 :

키보드로 하나의 소문자를 입력 받아서 다음과 같은 출력을 할 수 있도록 한다.

a를 입력하였을 경우 apple, b를 입력하였을 경우 banana, c를 입력하였다면 cherry, 그 외에는 Undefined 를 출력하라.

switch 문을 이용하여 작성한다.

 입력 :

 하나의 문자 입력 : c

 출력 : 

 c로 시작하는 과일 : cherry

 입력 : 

 하나의 문자 입력 : z

 출력 : 

 z로 시작하는 과일 : Undefined


문자 하나를 비교할때는 case 'a': 로 하면 됩니다.

if문에서도 마찬가지예요 if(x == 'a') 이렇게 조건을 걸면 x가 'a'이면~ 이 됩니다. :)





오늘 준비한 내용은 여기까지 입니다. 조건문.. 어떻게보면 쉽고 어떻게보면 어려운 부분이예요~ 조건문만 확실하게 이해하시면 다음에 나올 반복문, 함수 등등 쉽게 다가올겁니다. 화이팅입니다 여러분 ^^7





게시글을 보시다가 궁금한 내용, 이게 맞나? 하는 내용, 이건 틀렸어!하는 내용들은 과감하게 댓글 달아주시면 감사하겠습니다.


이론적인 내용에 대한 궁금증은 검색을 통해 궁금증을 해결하는 것이 좋아요!!

실습적인 내용에 대한 궁금증은 최대한 생각을 해보고 검색을 하는 것이 좋아요!!

'Programming > C' 카테고리의 다른 글

[C] 함수  (0) 2018.05.15
[C] 반복문  (0) 2018.05.06
[C] 변수와 형식지정자  (0) 2018.04.30
[C] 기본 입/출력  (0) 2018.04.24
[C] 기본 구조  (0) 2018.04.19

+ Recent posts