![]() |
|
||||||||||
|
|||||
|
Регистрация: Nov 2004
Адрес: Санкт-Петербург
Сообщений: 751
|
Цитата:
Цитата:
Я не могу вспомнить случая, когда во Flash мне приходилось считывать данные, введёные пользователем, циклом. Соотвественно, вопрос про чтение данных, вводимых польователем немного не соответствует теме. Но если ты настаиваешь - код на C# (да простят меня модераторы) using System;
using System.Collections.Generic;
using System.Text;
namespace ReadTest
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Введите текст:");
string temp;
for (; (temp = Console.ReadLine()).Length > 0; )
{
Console.WriteLine("Введён новый текст: " + temp);
Console.WriteLine("Введите текст:");
}
}
}
}
__________________
Всё гениальное просто. |
|
|||||
|
Во избежание недопониманий, есть предложение уйти на чистый С.
Ввод с клавиатуры одной строки - вполне так показательно, с учетом того, что ты реализацию проверки конца ввода возложил на компилятор ( а что ? машина умная, она сама все знает). Ну про то, что модификация параметров цикла в процессе его выполнения ведет к неустойчивости кода (если мягко выразиться) ты, наверное, не в курсе. Скомпили проект, посмотри, что там получилось в коде - или тебя это мало интересует, тебе главное - чтобы работало ?
__________________
Тут вы найдете ответы на почти все вопросы: А можно ли сделать так ? - Можно. Почему не работает ? - Неправильно сделано. Где ошибка ? - В ДНК. |
|
|||||
|
Хорошо, по теме...
Пользователь вводит размер стороны квадрата. Твоя задача - полностью заполнить квадрат вертикальными линиями рандомного цвета. Твоя вторая задача - двигать по окружности внутри квадрата мувик размером 3х3, пока пользователь не ткнет в него мышкой. Используй for и while в обоих случаях. Желательно смотри, что происходит с кодом во всех случаях.
__________________
Тут вы найдете ответы на почти все вопросы: А можно ли сделать так ? - Можно. Почему не работает ? - Неправильно сделано. Где ошибка ? - В ДНК. |
|
|||||
|
Регистрация: Nov 2004
Адрес: Санкт-Петербург
Сообщений: 751
|
Если честно, на компе у меня не стоит компилятор C и устанавливать его нет никакого желания.
Цитата:
Означает, что в начале итерации мы получаем строку, заносим её в переменную temp и если длина temp больше 0 - начинаем итерацию. В данном случае, изменение параметра цикла опасности не представляет, так как длина строки однозначно либо меньше нуля (выход из цикла), либо больше (начало новой итерации), что и требуется для получения данных, пока они вводятся. Конечно правильнее было бы всё это обернуть в try/catch, но это просто демонстрация.
__________________
Всё гениальное просто. |
|
|||||
|
Регистрация: Nov 2004
Адрес: Санкт-Петербург
Сообщений: 751
|
Цитата:
//Квадрат находится в координатах (0, 0)
var l = tbInput.text; //длинна стороны
//Рисуем границы квадрата
var s = 0;
for(var i = 0; i < l; i++)
{
//Определяем цвет, устанавливаем перо у верхней грани, ведём линию
}
__________________
Всё гениальное просто. |
|
|||||
|
Регистрация: Nov 2004
Адрес: Санкт-Петербург
Сообщений: 751
|
Цитата:
Пишем обработчик onEnterFrame клипа с квадратом, в котором перемещаем мувик по окружности на определённый угол, на мувик ставим обработчик onRelease, который будет удалять onEnterFrame квадрата.
__________________
Всё гениальное просто. |
|
|||||
|
Да, случай запущенный...
В примере про ввод строки ты а) отдал распознание конца ввода средствам ОС; б) фактически каждая твоя итерация изменяет параметры цикла; Ты представляешь себе, как это реализовывается на более низком уровне ? Хотя бы в общих чертах ? Про рисование квадрата - сам разницы не увидел ? Жаль...
__________________
Тут вы найдете ответы на почти все вопросы: А можно ли сделать так ? - Можно. Почему не работает ? - Неправильно сделано. Где ошибка ? - В ДНК. |
|
|||||
|
Регистрация: Nov 2004
Адрес: Санкт-Петербург
Сообщений: 751
|
Цитата:
Возьмём Flash: программа на ActionScript исполняется Macromedia Flash Player, который точно также транслирует байт код в машинный код, и отвечает за распознавание конца строки. И для меня, как для программиста на ActionScript и C# нет разницы, буду ли я использовать в данном контесте for или while. Что улучшиться, если я вместо for использую while?
__________________
Всё гениальное просто. |
|
|||||
|
Ветеран форума
|
Да собстенно разницы между for и while нету, просто while использовали с 4 версии флеша , а for появился только в пятой ... как по мне так намного удобнее for да и посвежей )))
__________________
BestMasterиZация |
|
|||||
|
посвежей - это что имеется в виду? используется всего 9 лет, а не 10?))
|
![]() |
![]() |
Часовой пояс GMT +4, время: 11:53. |
|
|
« Предыдущая тема | Следующая тема » |
|
|