Ввод с клавиатуры. (А ещё-то какой может быть?)

Любые разговоры которые хоть как-то связаны с тематикой форума

Модератор: Модераторы разделов

promov
Сообщения: 384
Статус: Участник
ОС: Debian GNU/Linux

Ввод с клавиатуры.

Сообщение promov »

Разъясните пожалуйста: который раз я встречаю в книгах мысль, типа: есть ввод с клавиатуры и он таков, что вот на клавиши нажимаешь и вот это этот самый пресловутый ввод и есть. Но главное, что подразумевается: есть ещё какой-то ввод "не с клавиатуры", но он довольно специфичен и мы его сейчас не рассматриваем.

А я всё голову ломаю: так каким образом данные-то ещё можно ввести, кроме как с клавиатуры?
Зачем хорёк пошел в ларёк, зачем барсук полез на сук...
Мораль легко уразуметь: зачем на бал пришёл медведь?
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Ввод с клавиатуры.

Сообщение Uncle_Theodore »

Данные можно считать из файла, например. :)
На более низком уровне, поток данных может поступать с устройства. Или генериться другим процессом.
Спасибо сказали:
promov
Сообщения: 384
Статус: Участник
ОС: Debian GNU/Linux

Re: Ввод с клавиатуры.

Сообщение promov »

Так я и думал. Это всв равно, что первокласснику сказать: вот сейчас мы решаем задачи по действиям, а есть енщё другой способ .Никто же так не говорит,. а просто однажды приходит время (4-ый, что ли, класс, и начинается изучение алгебры- решения задач с помощью уравнений)

Всему своё время. А такой преждевременной информацией только голову забивать- это уже вопрос о методике преподавания и изложения предмета.
Зачем хорёк пошел в ларёк, зачем барсук полез на сук...
Мораль легко уразуметь: зачем на бал пришёл медведь?
Спасибо сказали:
_Gleb_
Сообщения: 467
ОС: Kubuntu 12.04 LTS

Re: Ввод с клавиатуры.

Сообщение _Gleb_ »

Можно мышкой данные вводить. Ну или там джойстиком или рулём.
Изображение
Спасибо сказали:
promov
Сообщения: 384
Статус: Участник
ОС: Debian GNU/Linux

Re: Ввод с клавиатуры.

Сообщение promov »

Мышкой нельзя буквы вводить.
Зачем хорёк пошел в ларёк, зачем барсук полез на сук...
Мораль легко уразуметь: зачем на бал пришёл медведь?
Спасибо сказали:
_Gleb_
Сообщения: 467
ОС: Kubuntu 12.04 LTS

Re: Ввод с клавиатуры.

Сообщение _Gleb_ »

promov писал(а):
25.10.2007 20:28
Мышкой нельзя буквы вводить.

Да шо Вы говорите? Экранную клавиатуру видели когда-нибудь? Кроме того, речь шла о данных вообще, а не о буквах или цифрах в частности. А данные -- очень широкое понятие. И вообще: можно всё, что не противоречит законам физики. Хоть сделать сенсорную стенку, считывающую удары головой.
Изображение
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Ввод с клавиатуры.

Сообщение Uncle_Theodore »

promov писал(а):
25.10.2007 20:28
Мышкой нельзя буквы вводить.

Запросто можно. :) если кликать по соответствующим картинкам. :)
Но данные -- это вообще говоря, далеко не буквы. :) Скорее уж, шестнадцатиричные числа.

У Вас весьма забавный метод изучения строгих наук. Вы задаетесь огромным числом не относящихся к делу вопросов, а потом начинаете думать, что Вас где-то обманули и неправильно научили.
Это не очень действенный метод. :)
Спасибо сказали:
promov
Сообщения: 384
Статус: Участник
ОС: Debian GNU/Linux

Re: Ввод с клавиатуры.

Сообщение promov »

Да я решил посетовать на торопливость авторов. Даже если Вы и правы, Вы должны понимать, что если информация преподносится так (см. пост номер один) значит она преподносится не мэтрам, а новичкам вроде меня.
C целью? Чтобы я голову ломал- как же ещё она может вводиться, информация-то? И потом нашёл ответ: так-то и так-то, но тебе до этих способов ещё расти и расти. Потрачено, таким образом,моё время и нервы. Кому это надо?

Uncle_Theodore писал(а):
25.10.2007 20:41
У Вас весьма забавный метод изучения строгих наук. Вы задаетесь огромным числом не относящихся к делу вопросов, а потом начинаете думать, что Вас где-то обманули и неправильно научили.
Это не очень действенный метод. :)

Подсказать некому. Я варюсь в собственном котле, состоящим из одного человека- из меня.
P. S. Вы правы. Я не знаю, на что обращать внимание, поэтому обращаю его на всё подряд.
Зачем хорёк пошел в ларёк, зачем барсук полез на сук...
Мораль легко уразуметь: зачем на бал пришёл медведь?
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Ввод с клавиатуры.

Сообщение Uncle_Theodore »

Друг мой promov, определитесь, пожалуйста -- Вы хотитесь чему-то научиться у авторов книги, или это Вы хотите научить авторов правильно писать книги? :D
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: Ввод с клавиатуры.

Сообщение diesel »

promov писал(а):
25.10.2007 20:51
Да я решил посетовать на торопливость авторов. Даже если Вы и правы, Вы должны понимать, что если информация преподносится так (см. пост номер один) значит она преподносится не мэтрам, а новичкам вроде меня.

можно соврать, можно не сказать всю правду, можно не сказать всю правду, но предупредить что о всей правде будет потом, можно вывалить вам на голову всю правду сразу а вы рагребайте как умеете. "не сказать всю правду, но честно предупредить" - это нормальный способ, используется часто. если ты читаешь книги по программированию, то видимо заметил очень часто дается сразу краткий экскурс в язык, чтобы базовые понятия осознать, а потом медленно и методично начинает разжевываться вся правда. вполне работающий метод обучения. проблема часто состоит в том что компоненты языка, ОС сильно взаимосвязаны, и не без базовых знаний об этом говорить о другом нет смысла. поэтому делается именно так.
Спасибо сказали:
_Gleb_
Сообщения: 467
ОС: Kubuntu 12.04 LTS

Re: Ввод с клавиатуры.

Сообщение _Gleb_ »

promov писал(а):
25.10.2007 20:51
C целью? Чтобы я голову ломал- как же ещё она может вводиться, информация-то? И потом нашёл ответ: так-то и так-то, но тебе до этих способов ещё расти и расти. Потрачено, таким образом,моё время и нервы. Кому это надо?

Давайте поговорим об этом! Уверен, у авторов Вашего методического пособия и в мыслях не было Вас обидеть или вывести из себя. Скорее всего, они хотели выразить свою мысль более конкретно и не нашли ничего лучше. Будьте к ним снисходительны! Если Вам всё же не удастся их простить, попробуйте найти методичку, написанную более корректным языком. Вообще: попробуйте расслабиться, отдохнуть немного от компьютера. Может быть, прогулка на свежем воздухе -- это именно то, что Вам в данный момент нужно.
Изображение
Спасибо сказали:
promov
Сообщения: 384
Статус: Участник
ОС: Debian GNU/Linux

Re: Ввод с клавиатуры.

Сообщение promov »

А Вам я отвечу, перефразируя Шекли- там у него какой-то дядька искал свою жену (Кэт, её звали, что ли...), а другой вызвался ему помочью Ну и первы задаёт второму вопрос: "Да что ты знаешь о моей жене, чтобы её искать?""Ничего,- был ответ,- я ничего не знаю о Кэт, но я знаю всё о нахождении Кэт..."
Я ничего на знаю за С. Но вот за методику преподавания... Да я и за методику преподавания тоже, может быть ничего не знаю, но что касается вот этого вот конкретного вопроса...
Впрочем, лучше с Вами согласиться, а то мне сейчас припишут все смертные грехи.

Это дяде Теодору адресовано.

...И то сказать, считаю очень важным узнать как это переменные, объявленные как снar, можно использовать как int! Не разобравшись в этом вопросе не могу идти дальше- ребята (и Вы тоже) пытались мне помочь, но я не понял. Вопрос, повторяю, очень важный (?). Только такой моей оценкой объясняется "бросание" от одного источника информации к другому- от одной книги к другой.
Зачем хорёк пошел в ларёк, зачем барсук полез на сук...
Мораль легко уразуметь: зачем на бал пришёл медведь?
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Ввод с клавиатуры.

Сообщение Uncle_Theodore »

promov писал(а):
25.10.2007 21:02
Я ничего на знаю за С. Но вот за методику преподавания... Да я и за методику преподавания тоже, может быть ничего не знаю, но что касается вот этого вот конкретного вопроса...
Впрочем, лучше с Вами согласиться, а то мне сейчас припишут все смертные грехи.

Это дяде Теодору адресовано.

Запросто. Давайте поговорим за методику преподавания. 12 лет моей работы в университетах США могут послужить рекомендацией моей компетентности? :)
Вот Вы заходите в класс и говорите: "Дети! Сегодня мы изучаем несобственные интегралы. Начнем со случая особенности на бесконечности..." Тут подпрыгивает студент с первой парты и говорит: "А почему несобственные? А почему интегралы? А дифференциальные уравнения мы будем изучать? А почему особенность на бесконечности? А если особенность не на бесконечности? А что такое особенность? А что такое бесконечность? А где в реальной жизни бывают интегралы с особенностью на бесконечности? А если особенность на минус бесконечности? А что такое минус бесконечность? А почему на вещественной прямой нет ни бесконечности, ни минус бесконечности? А был ли Большой Взрыв, и значит ли это, что минус бесконечности никакой нет, так зачем же ее изучать?..."
Вы будете отвечать на все эти вопросы? Тогда Вам десяти лет не хватит, чтобы объяснить этому ребенку несобственные интегралы... :D
Спасибо сказали:
promov
Сообщения: 384
Статус: Участник
ОС: Debian GNU/Linux

Re: Ввод с клавиатуры.

Сообщение promov »

Да я по Вашим другим постам понял, что Вы где-то преподаёте- да вот Вы где то сравнивали адрес тёти Маши с записной книжкой, где этот адрес написан, и в других местах тоже- да вот хоть бы даже мне объяснили, что значит выражение "функция возвращает число"- редко кто, кроме учителя так объяснит. Может, но редко. Поэтому знай я что за методику- я бы всё равно с Вами тягаться не стал- я-то ведь учителем не работаю.... Так что.,.. Ну да ладно.

Я дополнил посты номера (8 и 12)
Зачем хорёк пошел в ларёк, зачем барсук полез на сук...
Мораль легко уразуметь: зачем на бал пришёл медведь?
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Ввод с клавиатуры.

Сообщение Uncle_Theodore »

Хорошо. Попытаюсь объяснить Вам, почему int можно использовать как char. На пальцах и неточно, но идею.

Система, разумеется, не понимает, что Вы называете числом, а что буквой. Все данные в памяти записаны сплошным потоком битов. Вот так 100100100111010010010010011...

Когда Вы в программе декларируете переменную, Вы вдействительности просите компилятор выделить Вам определенное количество памяти. Сколько именно памяти -- зависит от типа переменной. То есть, когда Вы говорите "хочу переменную int mint", в памяти машины выделяется, скажем, четыре байта, и когда Вы обращаетесь в коде к int mint, система знает, что Вы имеете в виду именно эти четыре байта в памяти, хотите туда что-то записать или считать. Вот так оно выглядит

Код: Выделить всё

1101000101001010100100101001010101010100101010101000101010
                | < --     вот это int mint   -- > |

Теперь, когда Вы говорите "прочитай-ка мне содержимое int mint!", система говорит, ага! Надо найти, где этот mint начинается, считать, начиная с этого адреса 4 байта и интерпретировать как int.

Теперь Вы можете сказать: "А ну-ка, сделай вид, что этот mint в действительности char! Вот мне так хочется! И считай его!" Система думает "Ага, чар у нас размера два байта (ну, например)! ну-ка, найдем, где начинается этот mint, считаем два байта с того места, где он начинается, и интерпретируем эти биты как чар! А почему бы нет, хозяин хочет!" :)

C, в отличии от Паскаля -- не язык специально созданный для изучения программирования. Поэтому компилятор не сильно следит за синтаксисом. Ну хочется Вам -- наверное, Вы знаете, что делаете.
Спасибо сказали:
_Gleb_
Сообщения: 467
ОС: Kubuntu 12.04 LTS

Re: Ввод с клавиатуры.

Сообщение _Gleb_ »

Uncle_Theodore писал(а):
25.10.2007 21:58
C, в отличии от Паскаля -- не язык специально созданный для изучения программирования. Поэтому компилятор не сильно следит за синтаксисом. Ну хочется Вам -- наверное, Вы знаете, что делаете.

А что давает? Бинарники краше получаются, или компилятор так написать было проще?
Изображение
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Ввод с клавиатуры.

Сообщение Uncle_Theodore »

_Gleb_ писал(а):
25.10.2007 22:01
Uncle_Theodore писал(а):
25.10.2007 21:58
C, в отличии от Паскаля -- не язык специально созданный для изучения программирования. Поэтому компилятор не сильно следит за синтаксисом. Ну хочется Вам -- наверное, Вы знаете, что делаете.

А что давает? Бинарники краше получаются, или компилятор так написать было проще?

Не понял, что такое "давает", но если вопрос бы в том, что это дает -- неслежение за синтаксисом -- это дает более гибкую систему работы с памятью. Поэтому C еще называют Ассемблером для ленивых. Если Вы знаете, что делаете, то сделать какую-нибудь короткую красивую фишку на Сях легче, чем на Паскале.
Спасибо сказали:
promov
Сообщения: 384
Статус: Участник
ОС: Debian GNU/Linux

Re: Ввод с клавиатуры.

Сообщение promov »

Uncle_Theodore писал(а):
25.10.2007 21:58

Cпасибо! Я такую модель самостоятельно у себя в голове построил, но сомневался в ней вот по какой одной причине: а разве не так обстоят дела, думал я, что переменные типа сhar собраны в одном месте памяти (или чего там), а переменные типа int в другом? Тогда ведь их проблематично будет перепутать- да и не предусмотрено это, коль скоро так строго с их локализацией... А я из Вашего поста понял, что они где-то находятся подряд, типа

сhar, int, int, char, int,char, char, char, int ну и так далее. И этот порядок определён только порядком объявления переменных. Вот в каком порядке объявляем, в таком порядке это место и заполняется. Често говоря, меня смущает чем-то такая вот картина "распределения" памяти под переменные...

Оно таково? Если таково, тогда и Ваш пост про то. что цель типизации есть экономия места в памяти, становится вполне понятен.
Зачем хорёк пошел в ларёк, зачем барсук полез на сук...
Мораль легко уразуметь: зачем на бал пришёл медведь?
Спасибо сказали: