Language Integrated Query (LINQ - Language Integrated Query) - проект Microsoft по додаванню синтаксису мови запитів, що нагадує SQL, в мови програмування платформи .NET Framework. LINQ випущена разом з Visual Studio 2008 у кінці листопада 2007 року.
LINQ є набором функцій, що розширюють можливості запиту в синтаксисі мови C# і Visual Basic. LINQ надає стандартні шаблони для створення запитів і оновлення даних; технологія може бути розширена для підтримки потенційно будь-якого типу джерел даних (масиви, колекції, бази даних, документи XML, сутності (Entity)).
Архітектура LINQ показана на рис. 18.1.
Принцип LINQ полягає в тому, що усі елементи мови повинні виконувати одну і ту саму роботу незалежно від джерела даних. Проте, не дивлячись на те, що синтаксис працює з усіма типами джерел даних, постачальник запиту, що зв'язує дані з самим джерелом даних, може реалізувати цю поведінку по різному.
Объяснение:
Очень часто возникает необходимость ввести в компьютер несколько страниц текста из книги, статью из журнала или газеты и т. д. Конечно, можно затратить определённое время и набрать этот текст с клавиатуры. Но чем больше исходный текст, тем больше времени будет затрачено на его ввод в память компьютера.
Судите сами. Предположим, кто-то из ваших одноклассников, освоивших клавиатурный тренажёр, может вводить текстовую информацию со скоростью 150 символов в минуту. Выясним, сколько времени ему понадобится для того, чтобы ввести в память компьютера текст романа А. Дюма «Три мушкетёра». Одно из изданий этого романа выполнено на 590 страницах; каждая страница содержит 48 строк, в каждую строку входит в среднем 53 символа.
Вычислим общее количество символов в романе:
590 • 48 • 53 = 1 500 960 символов.
Вычислим время, необходимое для ввода этого массива символов в память компьютера: 1 500 960 : 150 ≈ 10 000 мин. А это приблизительно 167 часов.
При этом мы не обсуждаем во о времени на исправление возможных ошибок при таком ввода текста, не принимаем в расчёт усталость человека.
Для ввода текстов в память компьютера с бумажных носителей используют сканеры и программы распознавания символов. Одной из наиболее известных программ такого типа является ABBYY FineReader. Упрощённо работу с подобными программами можно представить так:
1. Бумажный носитель помещается под крышку сканера.
2. В программе отдаётся команда Сканировать и распознать. Сначала создаётся цифровая копия исходного документа в формате графического изображения. Затем программа анализирует структуру документа, выделяя на его страницах блоки текста, таблицы, картинки и т. п. Строки разбиваются на слова, а слова — на отдельные буквы. После этого программа сравнивает найденные символы с шаблонными изображениями букв и цифр, хранящимися в её памяти. Программа рассматривает различные варианты разделения строк на слова и слов на символы. В программу встроены словари, обеспечивающие более точный анализ и распознавание, а также проверку распознанного текста. Проанализировав огромное число возможных вариантов, программа принимает окончательное решение и выдает пользователю распознанный текст.
3. Распознанный текст переносится в окно текстового редактора (например, Microsoft Word).
Вместо сканера можно использовать цифровой фотоаппарат или камеру мобильного телефона. Например, при работе с книгами в библиотеке вы можете сфотографировать интересующие вас страницы. Скопировав снимки на компьютер, вы можете запустить ABBYY FineReader, распознать тексты и продолжить работу с ними в текстовом процессоре
Возможности современных компьютеров по хранению больших массивов информации и осуществлению в них быстрого поиска положены в основу разработки компьютерных словарей и программ-переводчиков. Компьютерные словари выполняют перевод отдельных слов и словосочетаний. Для перевода текстовых документов применяются программы-переводчики.
Подробнее - на -
Поделитесь своими знаниями, ответьте на вопрос:
Кто знает pascal сформировать очередь, элементами которого являются целые числа. написать процедуру add, которая вставляет элемент в очередь и процедуру delete, которая удаляет элемент из очереди.
ответ:
program sum;
var a, b: double;
begin
write(число a например 7 : ');
readln(a);
write('число b= например 8: ');
readln(b);
write(a, '+', b, '=', a+b) ;
readln;
end.
объяснение: