# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2013-11-11 09:56+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. type: One-char language identifier #: train601.languagecode:1 #, no-wrap msgid "E" msgstr "R" #. type: Title-text #: train601/scene.txt:1 #, no-wrap msgid "train601:A function" msgstr "train601:Функция" #. type: Resume-text #: train601/scene.txt:2 #, no-wrap msgid "train601:Create a function in order to make your program shorter." msgstr "train601:Создайте функцию чтобы запрограммировать стрелка." #. type: ScriptName-text #: train601/scene.txt:3 #, no-wrap msgid "train601:Move" msgstr "train601:Move" #. type: \b; header #: train601-help/tproc1.txt:1 #, no-wrap msgid "Exercise" msgstr "" #. type: Plain text #: train601-help/tproc1.txt:3 #, no-wrap msgid "The bot must pass over all the blue crosses on the ground. The way that must be covered is made of two squares. The first one measures 15 meters, the second 25 meters." msgstr "" #. type: Image filename #: train601-help/tproc1.txt:4 #, no-wrap msgid "tproc1a" msgstr "" #. type: \b; header #: train601-help/tproc1.txt:5 #, no-wrap msgid "General principle" msgstr "" #. type: Plain text #: train601-help/tproc1.txt:7 #, no-wrap msgid "In order to solve this problem, the most efficient solution consists in creating a function that instructs the bot to move on a square shape of a certain size. The main program becomes then very simple:" msgstr "" #. type: \s; block (usually verbatim code) #: train601-help/tproc1.txt:12 #, no-wrap msgid "" "extern void object::Function1( )\n" "{\n" "\tSquare(15);\n" "\tSquare(25);\n" "}" msgstr "" #. type: Plain text #: train601-help/tproc1.txt:14 #, no-wrap msgid "You still have to define the function called Square. In order to do this, you will have to write some instructions outside the block that until now was the frame of each one of your programs. At the very end of the program, after the last closing brace, we will define the function Square. The program will take the following shape:" msgstr "" #. type: \s; block (usually verbatim code) #: train601-help/tproc1.txt:24 #, no-wrap msgid "" "extern void object::Function1( )\n" "{\n" "\tmain function ...\n" "}\n" "\n" "void object::Square(float length)\n" "{\n" "\tnew function ...\n" "}" msgstr "" #. type: Plain text #: train601-help/tproc1.txt:26 #, no-wrap msgid "Let us look in detail at the different elements of the declaration of the function Square:" msgstr "" #. type: Plain text #: train601-help/tproc1.txt:29 #, no-wrap msgid "" "void\n" "This means that this function will return no value." msgstr "" #. type: Plain text #: train601-help/tproc1.txt:32 #, no-wrap msgid "" "object::\n" "When you write this in front of the function name, you can have access in the function to all the characteristics of the bot, such as position, orientation, etc. In this exercise, this element is not compulsory, as we will not need the characteristics of the bot in the function." msgstr "" #. type: Plain text #: train601-help/tproc1.txt:35 #, no-wrap msgid "" "Square ( )\n" "This is the name of the function. You can call it Square, or any other name." msgstr "" #. type: Plain text #: train601-help/tproc1.txt:38 #, no-wrap msgid "" "float length\n" "Here you define the parameters that the function will get when it is called. The first time the function is actually called with Square(15), the variable length will contain the value 15. The second time, length will contain 25." msgstr "" #. type: Plain text #: train601-help/tproc1.txt:40 #, no-wrap msgid "Here is in detail what will happen when the program is executed:\n" msgstr "" #. type: Bullet: '-' #: train601-help/tproc1.txt:40 #, no-wrap msgid "First the main function Function will be executed." msgstr "" #. type: Bullet: '-' #: train601-help/tproc1.txt:41 #, no-wrap msgid "At the line Square(15), the program will follow the red arrow and enter the function Square a first time, length containing 15." msgstr "" #. type: Bullet: '-' #: train601-help/tproc1.txt:42 #, no-wrap msgid "At the end of the function Square, the program follows the orange arrow and comes back to the main function." msgstr "" #. type: Bullet: '-' #: train601-help/tproc1.txt:43 #, no-wrap msgid "At the line Square(25), the program will follow the blue arrow and enter the function Square a second time." msgstr "" #. type: Bullet: '-' #: train601-help/tproc1.txt:44 #, no-wrap msgid "At the end of the function Square, the program follows the light blue arrow and comes back to the main function." msgstr "" #. type: Image filename #: train601-help/tproc1.txt:46 #, no-wrap msgid "tproc1b" msgstr "" #. type: Plain text #: train601-help/tproc1.txt:48 #, no-wrap msgid "In the function Square, use the instructions move and turn. In order to make it shorter, you can use a for loop, that will repeat the instructions move and turn 4 times; however, this is not compulsory." msgstr "" #. type: \s; block (usually verbatim code) #: train601-help/tproc1.txt:57 #, no-wrap msgid "" "void object::Square(float length)\n" "{\n" "\tfor ( int i=0 ; i<4 ; i=i+1 )\n" "\t{\n" "\t\tmove(length);\n" "\t\tturn(90);\n" "\t}\n" "}" msgstr "" #. type: \t; header #: train601-help/tproc1.txt:58 #, no-wrap msgid "See also" msgstr "" #. type: Plain text #: train601-help/tproc1.txt:59 #, no-wrap msgid "Programming, types and categories." msgstr ""