메뉴 건너뛰기

imp

[GS] ArrayFormula 함수 활용하기

lispro062017.04.07 08:38조회 수 2259댓글 0

    • 글자 크기

ArrayFormula 는 영역의 내용을 그대로 참조할 수 있다.


importrange 함수는 다른 파일(스프레드시트)의 영역을 참조하는데, limit 가 걸려있고, 느리므로 별로 안 좋아한다.


ArrayFormula 를 이용해 다른 view 를 구성하는 것이 필요한 경우 사용 가능하다.


A, B, C 컬럼 중 A, C 만 연속해서 활용해야할 때 좋다.


더더욱 좋은 것은 문자열의 가공이 가능하다는 것이다.


=ArrayFormula(if('sheet'!V3:X="",,left('sheet'!V3:X,19)))


V3 행부터 X 행 전체 내용을 가져오는데, 비어있지 않다면(내용이 있다면) LEFT 함수를 거쳐 출력하는 것이다.


원래 내용은 20자인데, 별로 안 예쁘게 출력될 때, 새로운 view를 구성하면서 문자열을 자르고 출력시킬 수 있다.



또다른 활용으로는 index 와 row 를 이용한 순서 바꾸기(reverse) 이다.


=INDEX(ArrayFormula('sheet'!B$2:B),COUNTA(ArrayFormula('sheet'!$B$2:$B))-ROW()+2,1)


해당 예제는 2행 부터 시작되는 경우이고, arrayformula를 사용하는 시트도 2행부터 시작하여 내용을 맞췄다.


C 컬럼의 경우 그대로 복사하면, 옆의 행을 참조하도록 상대 주소가 반영된다.


3행의 경우도 전체 참조내용에서 row 함수에 의해 index 가 반전되므로 역정렬된 데이터를 볼 수 있다.


구글 form의 고질적인 문제(아래로 쌓이면 내용 확인을 위해 스크롤)가 있어 찾아봤다.

lispro06 (비회원)
    • 글자 크기
[SSL] SSL 설정 파워쉘 스크립트 (by lispro06) [정산] 세금이 10% (by 박영식)

댓글 달기

[GS] ArrayFormula 함수 활용하기

[원문보기]

ArrayFormula 는 영역의 내용을 그대로 참조할 수 있다.


importrange 함수는 다른 파일(스프레드시트)의 영역을 참조하는데, limit 가 걸려있고, 느리므로 별로 안 좋아한다.


ArrayFormula 를 이용해 다른 view 를 구성하는 것이 필요한 경우 사용 가능하다.


A, B, C 컬럼 중 A, C 만 연속해서 활용해야할 때 좋다.


더더욱 좋은 것은 문자열의 가공이 가능하다는 것이다.


=ArrayFormula(if('sheet'!V3:X="",,left('sheet'!V3:X,19)))


V3 행부터 X 행 전체 내용을 가져오는데, 비어있지 않다면(내용이 있다면) LEFT 함수를 거쳐 출력하는 것이다.


원래 내용은 20자인데, 별로 안 예쁘게 출력될 때, 새로운 view를 구성하면서 문자열을 자르고 출력시킬 수 있다.



또다른 활용으로는 index 와 row 를 이용한 순서 바꾸기(reverse) 이다.


=INDEX(ArrayFormula('sheet'!B$2:B),COUNTA(ArrayFormula('sheet'!$B$2:$B))-ROW()+2,1)


해당 예제는 2행 부터 시작되는 경우이고, arrayformula를 사용하는 시트도 2행부터 시작하여 내용을 맞췄다.


C 컬럼의 경우 그대로 복사하면, 옆의 행을 참조하도록 상대 주소가 반영된다.


3행의 경우도 전체 참조내용에서 row 함수에 의해 index 가 반전되므로 역정렬된 데이터를 볼 수 있다.


구글 form의 고질적인 문제(아래로 쌓이면 내용 확인을 위해 스크롤)가 있어 찾아봤다.

매트랩 구현 사전 학습

[원문보기]
Σa_n Sin(N x X)의 계산
n은 1, 3, 5로 했으며,
-90에서 501도까지를 rad로 환산하여 계산하였다.

결과값은 img와 같이 얻었다.

홀수의 N만 넣으면, 구형파와 유사한 모양을 띤다.

img는 excel chart이다.

sin x + (sin 3x) / 2 + (sin 5x) / 5 의 그래프.

[GIT] github의 기본적인 명령어

[원문보기]
git reset : add나 rm 명령들을 제거한다.



git는 명령어를 사용하면 commit하고, push 하기 전 까지 완전히 적용이 안 된다.

따라서 add/rm 후, commit 하여 local repository에 적용시키고, push하여 remote repository에 까지 업데이트 한다.

1. git add[rm] 파일명
2. git commit -m "메시지"
3. git push origin master

업데이트 된 내용을 받으려면

git pull

하면 된다.


git checkout  -- <파일> : 현재 작업 중인 파일 중 수정된 파일을 index에 있는 것으로 원복
git reset --hard : 현재 작업 중이 파일을 모두 원복 시킴
git reset -- <파일명> : add같은 명령어로 인덱싱한 것을 취소함

xml데이터 파싱을 이용한 chart

[원문보기]
Line chart
    <mx:Panel title="Line Chart">
        <mx:LineChart dataProvider="{myAC}" showDataTips="true">
            <mx:horizontalAxis>
                <mx:CategoryAxis dataProvider="{myAC}" categoryField="month"/>
            </mx:horizontalAxis>
            <mx:series>
                <mx:LineSeries yField="apple" displayName="Apple"/>
                <mx:LineSeries yField="orange" displayName="Orange"/>
                <mx:LineSeries yField="banana" displayName="Banana"/>
            </mx:series>
        </mx:LineChart>

Pie chart
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" backgroundGradientColors="[#f7f794, #adb2ce]">
    <mx:Script><![CDATA[
        import mx.collections.ArrayCollection;
        import mx.utils.ArrayUtil;
    ]]></mx:Script>
    <!-- xml데이터 모델 소스 지정 -->
    <mx:Model id="myXML" source="data/data.xml"/>
 <!-- XML을 ArrayCollection 데이터로 변환 -->   
    <mx:ArrayCollection id="myAC" source="{ArrayUtil.toArray(myXML.result)}" />
    <mx:Panel title="Pie Chart - apple">
        <mx:PieChart dataProvider="{myAC}" showDataTips="true">
            <mx:series>
             <mx:Array>
                 <mx:PieSeries field="apple" labelPosition="inside"/>
             </mx:Array>
            </mx:series>
        </mx:PieChart>
    </mx:Panel>
    <mx:Panel title="Pie Chart - orange">
        <mx:PieChart dataProvider="{myAC}" showDataTips="true">
            <mx:series>
             <mx:Array>
                 <mx:PieSeries field="orange" labelPosition="inside"/>
             </mx:Array>
            </mx:series>
        </mx:PieChart>
    </mx:Panel>
    <mx:Panel title="Pie Chart - banana">
        <mx:PieChart dataProvider="{myAC}" showDataTips="true">
            <mx:series>
             <mx:Array>
                 <mx:PieSeries field="banana" labelPosition="inside"/>
             </mx:Array>
            </mx:series>
        </mx:PieChart>
    </mx:Panel>
</mx:Application>


[data.xml]
<data>
    <result month="1">
        <apple>20</apple>
        <orange>15</orange>
        <banana>11</banana>
    </result>
    <result month="2">
        <apple>18</apple>
        <orange>17</orange>
        <banana>23</banana>
    </result>
    <result month="3">
        <apple>18</apple>
        <orange>17</orange>
        <banana>23</banana>
    </result>
    <result month="4">
        <apple>11</apple>
        <orange>13</orange>
        <banana>9</banana>
    </result>
    <result month="5">
        <apple>8</apple>
        <orange>7</orange>
        <banana>3</banana>
    </result>
    <result month="6">
        <apple>11</apple>
        <orange>12</orange>
        <banana>21</banana>
    </result>
    <result month="7">
        <apple>20</apple>
        <orange>10</orange>
        <banana>13</banana>
    </result>
    <result month="8">
        <apple>18</apple>
        <orange>16</orange>
        <banana>29</banana>
    </result>
    <result month="9">
        <apple>28</apple>
        <orange>17</orange>
        <banana>22</banana>
    </result>
    <result month="10">
        <apple>18</apple>
        <orange>17</orange>
        <banana>3</banana>
    </result>
    <result month="11">
        <apple>3</apple>
        <orange>4</orange>
        <banana>9</banana>
    </result>
    <result month="12">
        <apple>1</apple>
        <orange>10</orange>
        <banana>13</banana>
    </result>                                       
</data>

벡터선언 및 plotting

[원문보기]
w와 x를 벡터로 선언하고 2개의 영역으로 나뉘어 한개 figure에 그린다.

syms w x
w = [1.0
2.5198
4.3267
.
.
.
.
163186.0735
163199.4767
163215.91700000002
];
subplot(2,1,1);
plot(w);
title('iq table(interpolation)');
x = [1.0
2.5198
4.3267
6.3496
.
.
.
.
165086.6174
165113.4940
165140.3718
];
subplot(2,1,2);
plot(x);
title('iq table');

plot의 속성, axis의 속성, font의 속성 설정

[원문보기]
그림은 plot tool을 본 화면이다. 멋지군..

for j = 1:8192
    a(j-0) = j^(4/3);
end
pplot = plot(a,'m-.','LineWidth',[1.5]);
pfont = text(4096, 65536,'bulletleftarrow middle value','fontsize',18,'color',[1 0 0]);
axis([0 8200 0 170000]);
axis square, title('AXIS SQUARE'), grid;
%%아래의 get함수는 속성을 지정할 수 있는 파라미터와 현재 속성값을 볼 수 있다.
plot_property = get(pplot)
font_property = get(pfont)
axis_property = get(gca)

linear interpolation을 통한 inverse quatization

[원문보기]
rom_iq와 rom_d 파일을 읽어서 보정하여 number^(3/4)를 생성한다.
그리고 그래프로 원래값과 비교해 본다.

rom_iq = fopen("rom_iq.txt",'r');
rom_d = fopen("rom_d.txt",'r');
a = fscanf(rom_iq,'%f');
b = fscanf(rom_d,'%f');
k = 0;
for i = 1:8192
    iq(i) = i^(4/3);
    nf = i/128;
    n = fix(nf);
    if(nf == n)
        n = n-1;
    end
    if(n<1)
        k(i)=a(i);
    else
        if(n<4)
            k(i)=b(n)+a(i-128*n)+(i-128*n)*b(n+64)/5.5;
        else
            k(i)=b(n)+a(i-128*n)+(i-128*n)*b(n+64);
        end
    end
end
subplot(2,1,1);
plot(iq);
subplot(2,1,2);
plot(k);

php XML파서

[원문보기]

<xml.php>

$file = "cultlife.xml";
function trustedFile($file)
{
// only trust local files owned by ourselves
if (!eregi("^([a-z]+)://", $file) && fileowner($file) == getmyuid())
{
return true;
}
return false;
}
function startElement($parser, $name, $attribs)
{
  print "&lt;<font color=#0000cc>$name</font>";
if (sizeof($attribs)) {
/*while (list($k, $v) = each($attribs)) {
print "<font color=#009900>$k</font><font color=#990000>$v</font>";
} */
}
print "&gt;";
}
function endElement($parser, $name)
{
print "&lt;/<font color=#0000cc>$name</font>&gt;<br>";
}
function characterData($parser, $data)
{
print "<b>$data</b>";
}
function PIHandler($parser, $target, $data)
{
switch (strtolower($target)) {
case "php":
global $parser_file;
// If the parsed document is "trusted", we say it is safe
// to execute PHP code inside it. If not, display the code
// instead.
if (trustedFile($parser_file[$parser])) {
eval($data);
} else {
printf("Untrusted PHP code: <i>%s</i>", htmlspecialchars
($data));
}
break;
}
}
function defaultHandler($parser, $data)
{
if (substr($data, 0, 1) == "&" && substr($data, -1, 1) == ";") {
printf('<font color="#aa00aa">%s</font>', htmlspecialchars
($data));
} else {
printf('<font size="-1">%s</font>', htmlspecialchars($data));
}
}
function externalEntityRefHandler($parser, $openEntityNames, $base,
$systemId,
$publicId)
{
if ($systemId) {
if (!list($parser, $fp) = new_xml_parser($systemId)) {
printf("Could not open entity %s at %sn", $openEntityNames,
$systemId);
return false;
}
while ($data = fread($fp, 4096)) {
if (!xml_parse($parser, $data, feof($fp))) {
printf("XML error: %s at line %d while parsing entity %
sn",
xml_error_string(xml_get_error_code($parser)),
xml_get_current_line_number($parser),
$openEntityNames);
xml_parser_free($parser);
return false;
}
}
xml_parser_free($parser);
return true;
}
return false;
}
function new_xml_parser($file) {
global $parser_file;
$xml_parser = xml_parser_create();
xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, 1);
xml_set_element_handler($xml_parser, "startElement", "endElement");
xml_set_character_data_handler($xml_parser, "characterData");
xml_set_processing_instruction_handler($xml_parser, "PIHandler");
xml_set_default_handler($xml_parser, "defaultHandler");
xml_set_external_entity_ref_handler
($xml_parser, "externalEntityRefHandler");


if (!($fp = @fopen($file, "r"))) {
return false;
}
if (!is_array($parser_file)) {
settype($parser_file, "array");
}
$parser_file[$xml_parser] = $file;
return array($xml_parser, $fp);
}
if (!(list($xml_parser, $fp) = new_xml_parser($file))) {
die("could not open XML input");
}
print "<pre>";
while ($data = fread($fp, 4096)) {
if (!xml_parse($xml_parser, $data, feof($fp))) {
die(sprintf("XML error: %s at line %dn",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
}
}
print "</pre>";
print "parse completen";
xml_parser_free($xml_parser);


<xmltest.xml>

<?xml version='1.0'?>
<!DOCTYPE chapter SYSTEM "/just/a/test.dtd" [
<!ENTITY plainEntity "FOO entity">
<!ENTITY systemEntity SYSTEM "xmltest2.xml">
]>
<chapter>
<TITLE>Title &plainEntity;</TITLE>
<para>
<informaltable>
<tgroup cols="3">
<tbody>
<row><entry>a1</entry><entry
morerows="1">b1</entry><entry>c1</entry></row>
<row><entry>a2</entry><entry>c2</entry></row>
<row><entry>a3</entry><entry>b3</entry><entry>c3</entry></row>
</tbody>
</tgroup>
</informaltable>
</para>
&systemEntity;
<sect1 id="about">
<title>About this Document</title>
<para>
<!-- this is a comment -->
<?php print 'Hi! This is PHP version '.phpversion(); ?>
</para>
</sect1>
</chapter>

<xmltest2.xml>

<?xml version="1.0"?>
<!DOCTYPE foo [
<!ENTITY testEnt "test entity">
]>
<foo>
<element attrib="value"/>
&testEnt;
<?php print "This is some more PHP code being executed."; ?>
</foo>

창업일지 - 사업소개, 회사비전 및 경영목표 공시

[원문보기]
1. 올해 안으로 제안서를 보내야 할 것 같습니다.
2. 어떤 식으로 접촉할지에 대해서 고민해야 할 듯.
3. 일단 회사홈페이지를 완료해야 하겠습니다.
4. 커리어플랜.kr에는 아이템 소개를 완료했습니다.

zbxe 작업일지(14일차)

[원문보기]
1. 다음 ajax api와 유사한 형태의 페이지 생성
php로 xml을 불러와 로컬화

2. pseblog.php, process.php, blogpost.php 대대적 수정

3. xml-rpc에 대한 개념 정립

4. str.replace와 정규식 등에 대한 학습

상수 e에 대한 글

[원문보기]

 상수 e는 다음과 같은 과정에서 느닷없이 나타나기도 한다. (1) 0과 1사이에 있는 임의의 수를 선택한다. (2) 같은 구간에서 또 하나의 수를 선택하여 이전의 수에 더한다. (3) 동일한 과정을 반복한다. 이런 식으로 0과 1사이에서 임의로 선택된 수를 계속더해 나간다고 했을 때, 총합이 1보다 커지려면 평균적으로 몇 번을 더해야 할까? 답 : 2.718523... <리만 가설 중>


 수 e는 수학적 중요도로 볼 때 원주율(파이)와 대등하고, 통상 얌전한 영어 소문자로 쓰여져 친숙한 느낌을 주는, 하지만 그래도 그 속을 이해하기가 보통 쉽지 않은 자연로그의 밑수 e는 대략 그 값이 2.718281828459045235360287471352662497이다.
상수 e는 18세기 중엽에 스위스의 수학자 오일러가 처음으로 세상에 소개한 수이다. 상수 e에 대한 표준적 정의를 처음 접하는 사람에게는 그 정의가 약간 복잡하고 어렵게 보일지 모른다.

수 e는 '정수 N이 점점 커질 때, 일반항이
(1+1/N)^N
인 수열의 극한값'으로 정의된다. N이 2일 때, 위의 식은
(1+1/2)^2=(3/2)^2=2.25
가 된다. N이 3일 때 그것은
(1+1/3)^3=(4/3)^3=2.37
이고, N의 값이 연속적으로 커짐에 따라 차례로
(1+1/4)^3=(5/4)^3=2.44, (6/5)^5, (7/6)^6,......
이렇게 계속된다. 따라서 e는
(10,001/10,000)^10,000=2.718145
와 아주 가깝다. 또한 상수 e는
(1,000,001/1,000,000)^1,000,000
에 더 가깝다.

비록 정의가 추상적이기는 하지만 이와 같이 e를 정의하면, 우리는 은행의 서류나 복리계산에 빠짐없이 나오는 e의 중요한 역할을 눈치챌 수가 있다.
e는 자연로그 함수의 밑수이다. 이 말을 명확이 이해하려면 까다로운 로그에 대한 약간의 부연 설명이 필요하다. 예를 들어, 10의 제곱은 100이므로 100의 상용로그는 2이다. 10의 세제곱은 1000이므로 1000의 상용로그는 3이다. 그리고 10의 2.7제곱은 500이므로 상용로그는 2.7이다. [log(500)=2.7] 한편, 어떤 수의 자연로그는 그 수와 같아지는 e의 지수를 나타낸다. 따라서, e의 (6.9)제곱은 1000이므로 1000의 자연로그는 (6.9)가 된다. [ln(1000)=6.9] e의 (4.6)제곱은 100이므로 100의 자연로그는 (4.6)이고, e의 (0.7)제곱은 2이므로 2의 자연로그는 0.7이다. 특히 마지막 수 2의 자연로그인 (0.7)은 재정학에서 매우 중요하다. 상수 (0.7)을 당신이 받는 이율로 나눈 값이 바로 당신의 원금이 두 배가 되는 데 걸리는 년수가 된다. 따라서 이율이 10%(0.10)일 때 당신의 원금이 두 배가 되는 데 걸리는 년수는 7년(0.7을 0.1로 나눈값)이고, 이율이 14%이면 원금이 두 배가 되는 년수는 5년(0.7을 0.14로 나눈값)이다.
이제부터 상수 e가 연출하는 믿기지 않는 현상을 몇 가지만 살펴보자. 우선 부교수를 1명 채용하고자 N명의 후보를 면접해야 하는 S대학 M학과가 있는데, 그 학과는 아래의 3가지 면접 원칙을 가지고 있다고 하자.
첫째, 후보의 면접이 끝나는 즉시 당사자에게 채용 여부를 알린다.
둘째, 일단 면접에서 떨어진 사람을 다시 면접해서 채용할 수는 없다.
면접이 마지막 사람까지 가면 그는 자동적으로 채용된다.
이 3가지 면접 원칙으로 M학과는 과연 자신이 원하는 최선의 후보를 채용할 수 있을까? M학과가 최선의 후보를 채용할지 여부는 아무도 장담할 수 없다. 그러나 M학과는 자신이 원하는 최선의 호보를 채용할 수 있는 확률은 극대화할 수 있는데, 그 전략은 통상 다음과 같이 세워진다. 먼저 Kn 따라서 만약 40명의 후보를 무작위 순서로 면접한다면 최적의 전략은 즉석에서 40명의 37%인 처음 15명을 무조건 떨어뜨린 다음 그의 앞 사람 모두보다 더 나은 후보를 부교수로 채용하는 것이다. 이런 방법을 사용해서 최선의 후보를 채용하게 될 확률 또한 아주 이상하게 1/e 또는 약 37%이다. 어떤 전략도 37%보다 더 좋은 확률을 가져다 주진 않는다. 비록 전제 조건인 M학과의 면접 원칙에 부자연스러운 면이 없진 않지만, 배우자를 선택하기 위한 '맛선 보기'와 같은 유사한 문제들 역시 이와 동일한 접근법과 논법이 사용된다.
상수 e는 무리수(두 정수의 비로 나타낼 수 없기 때문에 비순환 무한소수)인 동시에 초월수(대수방정식의 근이 될 수 없는 수)이다. 그럼에도 불구하고 e는 중요한 수학공식과 정리에 매우 흔하게 나타난다. 수 e는 삼각함수, 기하학, 미분방정식, 무한급수, 해석학 등 무수히 많은 서로 다른 수학의 분야에서 항상 필수적으로 등장하는 참으로 신출귀몰하고 의미심장한 수이다.
(1998년 3월 21일 하창호)

~ : 틸드(tilde), | : 버티컬바(vertical bar), ^ : 서큠플렉스(Circumflex)
! : 익스클레메이션 포인트(Exclamaion Point) ` : 그레이브(Grave)

(주) KT - 아이디어 공모전에 도전할 것이다.

[원문보기]
복수 응시도 가능하므로, 내년에 5개 이상의 아이템을 공모한다.
지성이면 감천!

행렬에서의 요소 치환 - 효율성 비교

[원문보기]

A = magic(4);
A(2:3,2:3) = [0 0; 0 0]
B = A;
for j = 1:4
        for k = 1:4
                if A(j,k) == 0
                        A(j,k) = 99
                end
        end
end
B
[j, k] = find(B==0);
    B(j,k) = 99

위의 코드는 A를 magic(4)으로 생성후, A22에서 A33까지를 0으로 치환한 후 B에 대입하였다. 그 후, A의 요소 중 0을 찾아 99로 치환하는 for문을 보여주며, B는 행렬의 특성을 이용해 find함수로 처리한다. for문은 반복적으로 처리하며, find는 한번에 처리함을 볼 수 있다.


A =


    16     2     3    13
     5     0     0     8
     9     0     0    12
     4    14    15     1



A =


    16     2     3    13
     5    99     0     8
     9     0     0    12
     4    14    15     1



A =


    16     2     3    13
     5    99    99     8
     9     0     0    12
     4    14    15     1



A =


    16     2     3    13
     5    99    99     8
     9    99     0    12
     4    14    15     1



A =


    16     2     3    13
     5    99    99     8
     9    99    99    12
     4    14    15     1



B =


    16     2     3    13
     5     0     0     8
     9     0     0    12
     4    14    15     1



B =


    16     2     3    13
     5    99    99     8
     9    99    99    12
     4    14    15     1

zbxe 작업일지

[원문보기]
1. 설치
2. /zbxe/widgets/login_info/skins/xe_official/login_form.html 수정
  - 오픈아이디만 사용할 수 있도록 수정함.
3. 플래닝 페이지를 외부 페이지 생성 메뉴를 이용해 등록
4. /zbxe/widgets/login_info/skins/xe_official/login_info.html 수정
  - 플래닝 페이지 링크 생성
5. create.php 생성
  - 해당 플랜에 대한 폴더를 생성하는 page
6. create.php에 unlink 추가
  - 해당 플랜 삭제시 이용 루틴(inst변수를 이용하여 식별)
7. syn_sch 파일 수정
  - 인코딩 문제가 발생하여 넘겨주는 변수와 내부 sql을 수정(숫자로 전송)

conv와 dsb의 비교

[원문보기]

t=linspace(0,1,1000);
g1 = cos(2*pi*100*t)+cos(2*pi*200*t); % target signal.
G1 = fftshift(fft(g1));
G1 = G1.* conj(G1) / 1000;
in = cos(2*pi*50.*t); % input signal.
IN = fftshift(fft(in));
IN = IN.* conj(IN) / 1000;
g = conv(g1,in); % convolution.
%dsb = g1+in; % DSB Mod.
dsb = g1.*in; % DSB Mod.
f=[-500:499];
G=fft(g);
G=fftshift(G);
realG = G.* conj(G) / 1000;


DSB=fftshift(fft(dsb));
realDSB = DSB.* conj(DSB) / 1000;


subplot(4,1,1);
plot(f,G1);
title('target signal');


subplot(4,1,2);
plot(f,IN);
title('input signal');


subplot(4,2,5);
plot(t,g(1:1000));
axis([0 0.05 -5 5]);
title('convolution signal in time');


subplot(4,2,7);
plot(f,realG(1:1000));
title('convolution signal in freq.');


subplot(4,2,6);
plot(t,dsb);
axis([0 0.05 -5 5]);
title('DSB signal in time');


subplot(4,2,8);
plot(f,realDSB);
title('DSB signal in freq.');

MS Imazine Cup

[원문보기]
















날짜/시간: 2008년 8월 3일 일요일 오전 10:00 - 2008년 8월 9일 토요일 오후 6:00
제품: 기타
대상 고객: 학생




이벤트 개요

Imagine Cup 2008에 사전등록하고 프랑스로 가자!!


2008년 8월 프랑스 파리에서 펼쳐질 Imagine Cup에 여러분을 초대합니다.


꿈과 열정을 가진 학생 여러분!! 2008
년 프랑스 파리에서 열리는 Imagine Cup에 참가해서 세계의 학생들과 실력을 겨루어 보면 어떨까요?

지금 Imagine Cup 프랑스 대회에서 사전등록을 하시면 경진이 시작되었을 때 이메일을 통해 일정과 경진 분야등을 알려드리는 것은 물론, Imagine Cup 뉴스레터를 통해 Imagine Cup 소식들을 전해드릴 예정입니다.

Imagine Cup에 참가해서 전세계의 학생들과 여러분들의 실력을 겨루어보고 프랑스 파리로 떠나는 행운도 잡아보시기 바랍니다.

Imagine Cup 2008 France에 지금 사전등록을 신청해주세요!!

===================================================
[Imagine Cup 2008 France 대회 개요]

온라인 예선 기간   : 2007년 9월 ~ 2008년 4월
세계대회 본선       : 2008년 8월 3일 ~ 9일
세계대회 본선 장소 : 프랑스 파리
===================================================

온라인 예선을 통과하여 최종 대회에 진출한 팀에게는 프랑스 파리에서 열리는 Imagine Cup 2008 France 대회에 출전하는 모든 경비를 마이크로소프트에서 지원해 드립니다.

세계의 학생들과 실력도 겨루고 글로벌 우정도 쌓을 수 있는 기회를 놓치지 마세요!!

zbxe 작업일지(5일차)

[원문보기]
1. xml parser 연동
  - urlencode()를 이용해 query를 넘겨 FEED ON FEEDS라이브러리 이용
  - 도서 api 2차 키워드 지원

2. naver 상호검색 api 연동
  - zbxe.php에 FEED ON FEEDS라이브러리 이용

3. write_form.php, simple.php 수정
  - 작성자의 태그와 작성 대상 키워드 태그 적용(글쓰기 가능)

창업일지 - 통신판매업신고증 수령 및 부가통신사업신고

[원문보기]
 1. 구청 지역경제과에서 문자를 받고 '면허세' 45000원을 지로형태의 고지서를 통해 은행에 제출하였다. 간이과세자는 면제 받는다. 영수증을 보여주면 간단한 확인 절차를 거치고 수령할 수 있다.

 2. 부가통신사업신고는 정보통신부(www.mic.go.kr)에서 갖가지(?) Active-x 컨트롤러를 설치하면, 온라인으로 간단히 신청가능하고, 등기로 받아볼 수 있다. 1800원정도 나온다.(빠른 등기는 500~1000원 정도 추가 과금)

 % 도메인 포워딩이 완료되었다. 페이지 작업을 해야하는데...

[bWAPP] LDAP Injection (Search)

[원문보기]

A1 - Injection

LDAP Injection (Search)


search 구문에 * 을 넣으면 모든 사용자 검색이 가능하므로 해당 문자열을 사용하지 못하도록 한다.


로그인 우회는 확인 중이다.


A1LDAP.PNG

첨부 (1)
A1LDAP.PNG
37.1KB / Download 54
위로