Добрый день! Вопрос по синтаксису примеров из книги М. Дрейера "C# для школьников: Учебное пособие ". Самообучением по нему занимается сын (12 лет), а я не программист и не всегда догадываюсь в чем ошибка и могу ему помочь. Код пишем в среде разработки MS Visual Studio 2008 Express Edition. Следующий код: Code: int NumberOfLegs(string animalName) { if (animalName == “слон”) //Если название животного — слон { // Возвращаемое значение 4 return 4; } else if (animalName == “индейка”) //Иначе, если животное — индейка { // Возвращаемое значение 2 return 2; } else if (animalName == “устрица”)//Иначе, если животное — устрица { // Возвращаемое значение 1 return 1; } else //Иначе (при всех других условиях) { // Возвращаемое значение 0 return 0; } } int i; //Переменная “i” будет хранить значение числа конечностей. i = NumberOfLegs(“индейка”); //Теперь i = 2, получив значение, возвращенное методом NumberOfLegs Console.WriteLine(“У индейки конечностей – “ + i); i = NumberOfLegs(“обезьяна”); //Теперь i = 0. Догадайтесь, почему! Console.WriteLine(“У обезьяны конечностей – “ + i); должен вывести текст «У индейки конечностей — 2», «У обезьяны конечностей — 0». Вместо этого выдает ошибку: "Пространство имен напрямую не включает в себя такие члены, как поля или методы". Также не работают все аналогичные предыдущие примеры в книге. Работает только первый пример, следующего содержания: Code: using System; class PleaseSayUra { static void Main() { Console.WriteLine(“Ура!“); Console.ReadLine(); } } Прошу подсказать в чем ошибка. Спасибо. С уважением, Павел.
Начнём с того, что Code: int i; //Переменная “i” будет хранить значение числа конечностей. i = NumberOfLegs(“индейка”); //Теперь i = 2, получив значение, возвращенное методом NumberOfLegs Console.WriteLine(“У индейки конечностей – “ + i); i = NumberOfLegs(“обезьяна”); //Теперь i = 0. Догадайтесь, почему! Console.WriteLine(“У обезьяны конечностей – “ + i); должно быть в какой-то функции, а не висеть в воздухе.
Code: // Пространства имен System using System; // Имя проекта namespace ConsoleApplication2 { // Создаем класс Animal class Animal { // Создаем метод static int NumberOfLegs(string animalName) { // Ход выполнения метода if (animalName == "слон") // Если название животного - слон { // Возращаемое значение 4 return 4; } else if (animalName == "индейка") // Иначе, если название животного - индейка { //Возращаемое значение 2 return 2; } else if (animalName == "Устрица") // Инеча, если название животного - устрица { // Возвращаемое значение return 1; } else // Иначе (При всех других условиях) { // Возвращаемое значение 0 return 0; } } static void Main(string[] args) { // Вызов метода. int i; i = NumberOfLegs("индейка"); Console.WriteLine("У индейки конечностей - " + i); i = NumberOfLegs("обезьяна - "); Console.WriteLine("У обезьяны конечностей - " + i); Console.ReadLine(); } } } Но правильней будет так: Code: // Пространства имен System using System; // Имя проекта namespace ConsoleApplication2 { // Создаем класс Animal class Animal { static void Main(string[] args) { // Вызов метода. int i; i = NumberOfLegs("индейка"); Console.WriteLine("У индейки конечностей - " + i); i = NumberOfLegs("обезьяна - "); Console.WriteLine("У обезьяны конечностей - " + i); Console.ReadLine(); } // Создаем метод static int NumberOfLegs(string animalName) { // Ход выполнения метода if (animalName == "слон") // Если название животного - слон { // Возращаемое значение 4 return 4; } else if (animalName == "индейка") // Иначе, если название животного - индейка { //Возращаемое значение 2 return 2; } else if (animalName == "Устрица") // Инеча, если название животного - устрица { // Возвращаемое значение return 1; } else // Иначе (При всех других условиях) { // Возвращаемое значение 0 return 0; } } }
Большое спасибо, Darksekret! Ошибки понял: сначала объявляем пространство имен System, потом пространство имен конкретного приложения; потом класс, в который "вкладываем" метод и вызов метода. Жалко, что в книге это все опущено. Неработоспособность программы сильно подрезала ребенку крылья.
Не удивляйся. Посмотри эту книгу..., она 120 страниц всего. Но она так отбивает интерес к программированию.., что лучше её прочесть, как сказку на ночь. Там есть примеры программ, где то в средине книги, пусть над ними экспериментирует.
Как удалить батником все файлы кроме тех которые начинаются на определенную букву Здраствуйте! Помогите исправить батник, что бы удалялись все файлы в папке кроме .doc начинающихся на букву Б Code: for %%i in ("c:\1\*.*") do if not "%%i"=="c:\1\Б*.doc" del "%%i" При таком коде удаляются все файлы, где тут ошибка?
если надоело, то думаю мало что хорошего получиться. Перед изучение языка: 1. Спроси себя для чего это тебе надо. а) Решать свои задачи. б) Для работы. в) Просто знать. г) др. 2. Новые языки изучать хорошо, но вот будет ли успех у этих языков. Возможно я не прав, но вот F# у нас в городе я не слышал что бы был спрос, точнее вообще не слышал и не видел что бы требовались с такими знаниями, это я про работу. 3. Изучаешь суть программирования (подробно один язык, советую C# - мое мнение, можно и другие, я начинал с pascal) и переход с одного на другой будет менее болезненный. 4. Любой язык будет изучать не интересно.
подскажите какую нибудь литературу по c++ на русском языке для создания приложений работающих с сетью. гуглил, ничего конкретного не нашел, везде только отрывистые статьи.
Для Qt есть отличный хелп с примерами. Прямо в среде qt creator. на rsdn.ru видел статью по сокетам для линукса. хорошая статья, сам по ней всё делал.