Вопросы и ответы | 

Владимир Алексеев
Как получить Pascal-компилятор ?

Я нуждаюсь в помощи научиться программировать на языке Паскаль.
Я нашёл 3 Pascal-курса , читаю их описания оКурсе, чтоб выбрать из них полноценный , в котором предложены не только голая теория, но и компилятор для получения практических навыков. Но я нигде не вижу кнопок типа "Скачать Компилятор".
Например, на странице "Программирование на языке высокого уровня Паскаль" https://intuit.ru/studies/courses/628/484/lecture/10984 перечислены "Основные понятия языка", Презентация, "Дальше" (ссылки на следующие лекции), а где найти Компилятор?

Игорь Орещенков
Игорь Орещенков | Репутация: 80 (Без статуса) 31 декабря 2020 в 20:03

Здравствуйте!
Самый популярный компилятор языка Паскаль на сегодняшний день - это продукт проекта FreePascal (https://freepascal.org). Дистрибутив для Windows можно загрузить здесь: https://sourceforge.net/projects/freepascal/files/Win32/3.2.0/fpc-3.2.0....
Интерфейс среды разработки очень напоминает Borland/Turbo Pascal 7, программа из первой лекции успешно собралась и работает. Скорее всего, будут работать и другие примеры.

Ольга Моисеенко
отмечаю верный ответ из лекции но нет

здравствуйте у меня есть проблема,я обучаюсь на курсе обьектно-ориентированого програмирования и в 12 тесте есть вопрос "успех это" и когда я выбираю ответ который есть в лекции в итоге показывает что неверно,как-так?

Сергей Волохов
С чего мне начать обучение?

Доброго времени суток!Я пользователь ПК.собираю ПК(железо),устанавливаю системы и программы.Но мне не хватает образования для очень многих моментов,в частности по программированию,по сетевым вопросам и по вопросам сист.админа.Посоветуйте,пожалуйста,с чего мне начать обучение?

Евгений Сидорук
код Dreamspark просрочен

Добрый день! Запросил код Dreamspark - система выдала вот этот  KCH69-3Y6R7-J7HTK-2G9DG-QWYTZ, а в системе говорят, что этот код уже просрочен?! А при выдаче было сказано, что могу получить только 1 раз в год ((( А как быть в таком случае?

Анатолий Федоров
Анатолий Федоров | Репутация: 781 (Специалист) 7 января 2016 в 12:19

Обещали прислать коды после праздников

Анатолий Федоров
Анатолий Федоров | Репутация: 781 (Специалист) 12 января 2016 в 15:42

Вот код:
7R49Y-9266K-4GWKM-3TDHD-DCPKZ

Илья Петров
В чём различие между базовыми вариантами использования и общими?

В курсе "Нотация и семантика языка UML" в лекции 4 я столкнулся со следующей терминологической проблемой: У вас перечислены действия для построения use case диаграмм и сказано, что требуется "Выделить общие варианты использования и изобразить их взаимосвязи с базовыми со стереотипом <<include>>"

Насколько я понимаю, вариант использования, в который включается некоторый подпроцесс с помощью связи <<include>> называется базовым. Логично предположить, что второй вариант использования (подпроцесс) в этом случае решает более частную задачу. Чем же тогда является "общий" вариант использования?
Источник: http://www.intuit.ru/studies/courses/32/32/lecture/1006?page=3

Алексей Семёнов
Алгоритм Флойда-Уоршелла

Задача: найти медиану графа, т.е такую его вершину. что сумма расстояний от нее до остальных вершин минимальна. 
Я пока пытаюсь найти только матрицу кратчайших расстояний(по алгоритму Флойда-Уоршелла).
У меня 2 матрицы(в виде StringGrid на форме), одна - матрица смежности, другая - матрица кратч. расстояний."inf" выводится во второй, при условии наличия ребра, которое отображается в первой
Я ввожу вес ребра прямо в матрицу(пока интерфейс не особо дружелюбен, потом исправлю..).

Код Delphi

var
  Form1: TForm1;
  r_g,i,j,k,s:Integer;
implementation
 
{$R *.dfm}
 
procedure TForm1.button1Click(Sender: TObject);
begin
if (length(Edit1.Text)>0)then
begin
  r_g:=StrToInt(Edit1.Text);
  StringGrid1.ColCount:= r_g;
  StringGrid1.RowCount:= r_g;
  StringGrid2.ColCount:= r_g;
  StringGrid2.RowCount:= r_g;
end
else
Application.MessageBox('Необходимо ввести число','Ошибка', MB_OK+MB_ICONSTOP);
end;
 
//задать граф
procedure TForm1.Button3Click(Sender: TObject);
begin
 for i:=0 to r_g-1 do
  for j:=0 to r_g-1 do
      begin
       if i=j then StringGrid1.Cells[i,j]:=IntToStr(0);  {между одной и той же вершиной}
       if i=j then StringGrid2.Cells[i,j]:=IntToStr(0)  {не может быть ребёр}
       else
       randomize;
       if i<>j then StringGrid1.Cells[i,j]:=IntToStr(random(2));
      end;
end;
 
//задать матрицу кратч. расстояний
procedure TForm1.Button2Click(Sender: TObject);
begin
 for i := 0 to StringGrid1.ColCount-1 do
       for j := 0 to StringGrid1.RowCount-1 do
         if StringGrid1.Cells[i, j] = ('0') then
            StringGrid2.Cells[i, j] := IntToStr(999)
         else
         if StringGrid1.Cells[i, j] = ('1') then
            StringGrid2.Cells[i, j] := 'inf';
end;
 
 //Медиана по алг Флойда
procedure TForm1.Button9Click(Sender: TObject);
begin
     k := 1;
     while k < StringGrid2.ColCount-1 do
       begin
         for i := 1 to StringGrid2.ColCount-1 do
           for j := 1 to StringGrid2.RowCount-1 do
             begin
               if (i <> k) and (j <> k) and (i <> j) then
               if StrToInt(StringGrid2.Cells[i, j]) > StrToInt(StringGrid2.Cells[i, k]) + StrToInt(StringGrid2.Cells[k, j]) then
                   begin
                     StringGrid2.Cells[i, j] := IntToStr(StrToInt(StringGrid2.Cells[i, k]) + StrToInt(StringGrid2.Cells[k, j]));
                   end;
             end;
         k := k + 1;
       end;
end;
 
end.

Помогите разобраться!

Наталя Бабляк
Чого мені не доступна версія для друку
Я записалася на курс
Введение в программирование. Але коли я вибираю версія для друку, то мені пише :"Запрашиваемая вами страница не доступна для вас!".Чому так? Що зробити,щоб я змогла роздрукувати в нормальному вигляді?
Администратор Администратор
Администратор Администратор | Репутация: 495 (Кандидат) 10 декабря 2013 в 12:13

Попробуйте снова. Должно заработать

Dima VVV
Зачем нужны интерфейсы в c#?
Добрый день.Посмотрел Ваши лекции,очень интересно и доступно,но не могу понять одного..Собственно,зачем нужны интерфейсы?Зачем нужны методы без реализации,если их все-равно придется реализовывать в классе-наследнике?Где же тут наследование тогда?Почему бы просто не описывать данный метод в каждом классе-наследнике?Разве это займет больше времени и усложнит задачу?
Заранее спасибо.
Иван Николаев
Иван Николаев | Репутация: 152 (Кандидат) 5 июня 2013 в 10:32

Для организации множественного наследования. Бывает так, что требуется написать единый полиморфный код для объектов из независимых иерархий. Допустим есть класс геометрических фигур и предположим строк. И у них есть общие методы, например, копирование и сравнение. Тому, кто разрабатывает сами классы, разницы конечно не будет. Но зато тому, кто будет работать уже с экземплярами, не придется думать о том, как (в нашем примере) копировать и сравнивать что строки, что геометрические фигуры. С его точки зрения поведение будет одинаковым.
Надеюсь, я правильно понял вопрос.
p.s. Спасибо за вопрос, пока думал как ответить, сам разобрался.

Vika Gorina
Помогите пожалуйста составить программу. задание:
Найти первый член последовательности, для которого выполнено условие |an-an-1|
Теги:
.net, , actionscript, ada, ado.net ...еще >>
Aa Aa
Aa Aa | Репутация: 2135 (Эксперт) 28 ноября 2010 в 18:12

Начните с составления блок-схемы алгоритма:
1. Вычисляете значение 1-го члена последовательности (A1).
2. Задаете положительное число E.
3. Вычисляете A(n+1).
4. Вычисляете R=|A(n+1)-An|
5. Если R<E, то переходим к 5, иначе перходим к 2.
6. Вывод ответа.
7. Конец.

Виталий Крылов
Виталий Крылов | Репутация: 1063 (Эксперт) 29 ноября 2010 в 01:38

На каком языке надо написать?
И к какому сроку?

Сергей Смирнов
Теги:
.net, , actionscript, ada, ado.net ...еще >>
Светлана П
Теги:
.net, , actionscript, ada, ado.net ...еще >>
Aa Aa
Aa Aa | Репутация: 2135 (Эксперт) 18 октября 2010 в 08:42

1. FTP-сервер может быть источником любой информации. Смотря что на него положить. Если это FTP-сервер учебного или научного заведения, то есть вероятность найти на нём научную информацию. Но чтобы сделать эту информацию доступной для других, ссылки на эти ресурсы часто располагают на web-сайтах.
2. http://www.intuit.ru/department/office/toolsyandex/3/4.html - пример использования FTP при создании сайта.

Антон Антонов
Антон Антонов | Репутация: 103 (Кандидат) 19 октября 2010 в 12:44

Вот также неплохой пример использования FTP при создании сайта

Сергей Сергеев
Теги:
.net, , actionscript, ada, ado.net ...еще >>
Анатолий Кругляк
Анатолий Кругляк | Репутация: 100 (Кандидат) 13 июня 2010 в 21:15

В том что в телефоне установлена програмное обеспечение не рассчитанное для выполнения функций приравниемых к ПК, а КПК (коммуникаторы) их програмное обеспечение написано дабы уменьшить устройства с большими возможностями, такие как например в ПК только программы, не все будут работать, а возможно и вовсе не будут работать из за малого размера оперативной памяти и слабого процессора в отличии от ПК

Андрей Абрамов
Андрей Абрамов | Репутация: 563 (Специалист) 15 июня 2010 в 01:40

Именно ОС и будет отличаться, как минимум версией. Ну а ассемблер зависит только от процессора.

Виталий Роденбергер
Теги:
.net, , actionscript, ada, ado.net ...еще >>
Александр Петров
Александр Петров | Репутация: 409 (Кандидат) 12 мая 2010 в 04:05

В функцию нельзя ничего записать! Функцию можно вызвать, в функцию можно передать значения, но записать - нет.
Что значит "увеличить на 5"? Увеличить размер массива? Увеличить значения этого массива?
Отвечать на некорректно заданный вопрос нет никакого желания, посему лишь поправлю предыдущего отвечальщика: использование realloc в паре с new - некорректно!

Виктор Феоктистов
Виктор Феоктистов | Репутация: 117 (Кандидат) 13 мая 2010 в 08:18

Да, ошибся. Либо malloc и realloc, либо new и {new новый, скопировать из старого в новый, delete старый и присвоить указатель на новый массив вместо старого}

Николай Авдеев
Теги:
.net, , actionscript, ada, ado.net ...еще >>
Виталий Крылов
Виталий Крылов | Репутация: 1063 (Эксперт) 26 декабря 2009 в 15:37

  Сейчас уже надо начинать с С#. Однако, отвечая на Ваш вопрос, лучше всего начать с С++ (от Бьерна Страуструпа).
  Курс по C++ (от Бьерна Страуструпа) можно найти на сайте ИНТУИТ.ру:
http://www.intuit.ru/department/pl/cpp2/,
также Вам можно порекомендовать начать изучать C++ по следующей книге:
http://www.intuit.ru/department/pl/cpp/

Александр Пузанов
Александр Пузанов | Репутация: 1145 (Эксперт) 27 декабря 2009 в 00:37

СИ – язык системного программирования, сейчас в основном используется для написания базовых компонентов операционных систем (ядро) и драйверов устройств.
Если вы не планируете этим заниматься, этот этап можно пропустить.
Основное отличие С++ от чистого СИ наличие ориентированность на обьектное программирование (объекты, классы).
Также есть особенности в языке, вносимые средой разработки (Visual С++ , C++ Builder).
Так что лучше сразу изучать конкретный «диалект» на котором будет вестись разработка приложений.

Дмитрий Балаев
Теги:
.net, , actionscript, ada, ado.net ...еще >>
Aa Aa
Aa Aa | Репутация: 2135 (Эксперт) 8 декабря 2009 в 20:51

В языке Паскаль тип массива задается с использованием специального слова array (англ. – массив), и его объявление в программе выглядит следующим образом:Type < имя _ типа >= array [ I ] of T; где I – тип индекса массива, T – тип его элементов.Можно описывать сразу переменные типа массив, т.е. в разделе описания переменных: Var a,b: array [ I ] of T; Обычно тип индекса характеризуется некоторым диапазоном значений любого порядкового типа : I 1 .. I n . Например, индексы могут изменяться в диапазоне 1..20 или ‘ a ’..’ n ’.При этом длину массива Паскаля характеризует выражение:ord ( I n )- ord ( I 1 )+1. Вот, например, объявление двух типов: vector в виде массива Паскаля из 10 целых чисел и stroka в виде массива из 256 символов:    Type     Vector=array [1..10] of integer;     Stroka=array [0..255] of char; С помощью индекса массива можно обращаться к отдельным элементам любого массива, как к обычной переменной: можно получать значение этого элемента, отдельно присваивать ему значение, использовать его в выражениях.Опишем переменные типа vector и stroka : Var a: vector; c: stroka; далее в программе мы можем обращаться к отдельным элементам массива a или c . Например, a [5]:=23; c [1]:=’ w ’; a [7]:= a [5]*2; writeln ( c [1], c [3]).

Андрей Абрамов
Андрей Абрамов | Репутация: 563 (Специалист) 10 декабря 2009 в 08:52

Описанные согласно стандартам языка.

Дмитрий Душин
Теги:
.net, , actionscript, ada, ado.net ...еще >>
Виталий Крылов
Виталий Крылов | Репутация: 1063 (Эксперт) 27 октября 2009 в 20:41

Почитать можно, например, здесь:
http://www.cyberguru.ru/programming/visual-cpp/
А купить можно здесь:
http://www.ozon.ru/context/detail/id/2192536/