IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Reply to this topicStart new topic
> Pascal ABC, Для новичков
t800
сообщение 12 Nov 2016, 19:49 (Сообщение отредактировал t800 - 12 Nov 2016, 20:03)
Сообщение #1

Разработчик
Сообщений: 534
Спасибо сказали: 221 раз




Прошли каникулы, теперь вторая четверть, и учитель по информатике теперь настроен серьёзно: был урок программирования на Pascal ABC. Писали мы на уроке программу Summa, и я как домашку, написал программу Kalkulator (Kakul for Pascal =).gif ). Как видно из названия в скобках, это вариация Kakul`a на C++, который я писал ранее. Только на версии для Pascal ABC мой Kakul обрёл графическую форму, в которой фоном служит очень красивая картинка chinese.gif

Вот, в общем, видео с уроком програмирования для новичков :




А вот и код Kakul'a измененный для Pascal ABC

Код
procedure Form1.button1_Click(sender: Object; e: EventArgs);

var a,b,c: real;
var message: string;

begin

a:= Convert.ToDouble(numericupdown1.Value);
b:= Convert.ToDouble(numericupdown2.Value);
writeln ('ввод a = ',a);
writeln ('ввод b = ',b);

// Сумма
if (ComboBox1.SelectedItem.ToString = '+') then  writeln ('Выбрано действие ',ComboBox1.SelectedItem);
if (ComboBox1.SelectedItem.ToString = '+') then c:=a+b;
if (ComboBox1.SelectedItem.ToString = '+') then message := 'Действие a+b = ';

// Разность
if (ComboBox1.SelectedItem.ToString = '-') then  writeln ('Выбрано действие ',ComboBox1.SelectedItem);
if (ComboBox1.SelectedItem.ToString = '-') then c:=a-b;
if (ComboBox1.SelectedItem.ToString = '-') then message := 'Действие a-b = ';

// Произведение
if (ComboBox1.SelectedItem.ToString = '*') then  writeln ('Выбрано действие ',ComboBox1.SelectedItem);
if (ComboBox1.SelectedItem.ToString = '*') then c:=a*b;
if (ComboBox1.SelectedItem.ToString = '*') then message := 'Действие a*b = ';

// Частное
if (ComboBox1.SelectedItem.ToString = '/') then  writeln ('Выбрано действие ',ComboBox1.SelectedItem);
if (ComboBox1.SelectedItem.ToString = '/') then c:=a/b;
if (ComboBox1.SelectedItem.ToString = '/') then message := 'Действие a/b = ';

writeln (message,c);
richTextBox1.text := message;
richTextBox1.AppendText(FloatToStr(c));

end;


А это весь проект на Pascal ABC в архиве


--------------------


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
izrukvruki
сообщение 12 Nov 2016, 22:55
Сообщение #2

Князь Бореи
Сообщений: 5 171
Спасибо сказали: 1349 раз




сын учится в 6 классе, началась информатика, но пока без программирования. А какие сейчас в школе языки преподают? Думаю ему уже сейчас будет интересно, чтото начать изучать простенькое...
Go to the top of the pageAdd Nick
 
+Quote Post
t800
сообщение 13 Nov 2016, 08:48 (Сообщение отредактировал t800 - 13 Nov 2016, 08:50)
Сообщение #3

Разработчик
Сообщений: 534
Спасибо сказали: 221 раз




Цитата(izrukvruki @ 13 Nov 2016, 01:55) *
сын учится в 6 классе, началась информатика, но пока без программирования. А какие сейчас в школе языки преподают? Думаю ему уже сейчас будет интересно, чтото начать изучать простенькое...


Пока преподают только Pascal ABC. Потом, может быть, и C++, но сейчас Pascasl. Скачать IDE для работы можно тут

Хотя мне С++ как-то больше нравится, потому что с ним проще: можно легко нагуглить ответ на любой вопрос, поэтому если для себя то лучше чем С++ языка нет. А на Pascal приходится делать потому что в школе его преподают и приходится писать на нем, хотя на С++ оно в разы проще: во-первых не надо все время писать эти

Код
Begin
End


Во-вторых сам по себе С++ проще, вон с тем же самым Kakul-ом

Я сперва написал

Цитата
if (ComboBox1.SelectedItem.ToString = '+') then
begin
writeln ('Выбрано действие ',ComboBox1.SelectedItem);
c:=a+b;
message := 'Действие a+b = ';
end


Потому что для С++ код такой должен быть

Код
if (ComboBox1.SelectedItem.ToString == "+")
{
printf ('Выбрано действие ',ComboBox1.SelectedItem);
c=a+b;
message = 'Действие a+b = ';
}


Но оказалось что Pascal if c блоками не понимает budo.gif
И пришлось для каждой строки делать свой if

Код
if (ComboBox1.SelectedItem.ToString = '+') then  writeln ('Выбрано действие ',ComboBox1.SelectedItem);
if (ComboBox1.SelectedItem.ToString = '+') then c:=a+b;
if (ComboBox1.SelectedItem.ToString = '+') then message := 'Действие a+b = ';


--------------------
Go to the top of the pageAdd Nick
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 28 March 2024 - 19:31
Copyright by Алексей Крючков
Strategy Gamez by GrayMage
Programming by Degtyarev Dmitry
  Яндекс.Метрика