Четверг, 09.01.2025
Pascal 4 All
[ · Новые сообщения · Участники · Правила форума · Поиск · RSS ]

 

  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Модератор форума: Seqular, Pavel  

Помогите решить кучу задач!!! Скоро зачет!!!
MAEDДата: Воскресенье, 20.04.2008, 22:21 | Сообщение # 1
Знакомый
Группа: Пользователи
Сообщений: 17
Репутация: 0
Замечания: 0%
Статус: Offline
Линейные операторы выбора:
1)Написать программу, которая по заданной букве русского алфавита определяет, гласная ли это буква.

Операторы цикла:
1)Определить наибольшее и наименьшее из трех чисел вводимых с компьютера.
2)Математик подсчитывал, на сколько увеличится кроликов в хозяйстве каждый год. Он получил последовательность 1,1,2,3,5,8,13,21,34. Написать программу, которая для заданного числа N выводит N членов последовательности.
3)Напишите программу, запрашивающую возраст пользователя. Если ему менее 18 лет, сообщите, что он имеет право голосовать, в противном случае вычислите, через сколько лет ему будет предоставлено это право.

Процедуры и функции:
1)Написать программу в которой используется функция, сравнивает два целых числа и при этом выводит результат
A>B
A<B
A=B
2)Написать функцию, которая вычисляет доход по вкладу, исходными данными для функции является величина вклада, процентная ставка(годовая) и срок вклада зависит от кол-ва дней.
3)Составить процедуру, которая вычисляет площадь и объем поверхности параллепипеда.

Заранее спасибо!!!

 
AlexanderДата: Воскресенье, 20.04.2008, 22:46 | Сообщение # 2
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
http://pascal-for-all.ucoz.ru/forum/15-191-1. Качаете книгу "Turbo Pascal 7.0 Начальный курс", читаете пару первых глав и за 20 минут делаете все эти задачки. А вот если будут конкретные вопросы, то мы на них ответим. И впредь не путайте "решение задач" и "помощь в решении задач".

Скажем дружно- нафиг нужно!
 
MAEDДата: Воскресенье, 20.04.2008, 22:51 | Сообщение # 3
Знакомый
Группа: Пользователи
Сообщений: 17
Репутация: 0
Замечания: 0%
Статус: Offline
Как в операторе выбора обозначить гласные буквы???
 
AlexanderДата: Воскресенье, 20.04.2008, 23:18 | Сообщение # 4
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Например, можно составить множество, в котором будут присутствовать все гласные буквы русского алфавита и проверить, входит ли введённая пользователем буква в это множество. Не забудьте, что заглавные и строчные буквы различаются. Пошаговый алгоритм:
1) Задать множество из заглавных гласных букв русского алфавита.
2) Прочитать символ с клавиатуры.
3) Если введён строчный символ, то перевести его в верхний регистр.
4) Проверить, входит ли этот символ в множество, заданное на первом шаге и вывести ответ.

Если все пункты ясны, то попробуйте реализовать это на паскале, а мы проверим и подправим, если нет, то спрашивайте.


Скажем дружно- нафиг нужно!
 
MAEDДата: Воскресенье, 20.04.2008, 23:29 | Сообщение # 5
Знакомый
Группа: Пользователи
Сообщений: 17
Репутация: 0
Замечания: 0%
Статус: Offline
Мы еще даже множество не проходили!!! Можете написать эту программу, а то я с ней уже много мучаюсь!!!
 
AlexanderДата: Воскресенье, 20.04.2008, 23:48 | Сообщение # 6
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Тогда используйте сложное условие:
Code
if (c='А') or (c='Е') or ... or (c='Я') then
    ...

Пошаговый алгоритм:
1) Прочитать символ с клавиатуры.
2) Если введён строчный символ, то перевести его в верхний регистр.
3) Проверить, удовлетворяет ли символ условию и вывести ответ.
Вариант 2, тупее, но тоже рабочий- указать в условном операторе сразу 20 условий, т.е. перечислить и строчние и заглавные буквы, тогда останется только третий пункт.
Quote
Можете написать эту программу, а то я с ней уже много мучаюсь!!!

Могу, но наша задача помочь вам научиться программировать или по крайней мере решать задачи.


Скажем дружно- нафиг нужно!
 
MAEDДата: Понедельник, 21.04.2008, 00:03 | Сообщение # 7
Знакомый
Группа: Пользователи
Сообщений: 17
Репутация: 0
Замечания: 0%
Статус: Offline
Quote (Alexander)
Могу, но наша задача помочь вам научиться программировать или по крайней мере решать задачи.

Спасибо большое!!!

Добавлено (20.04.2008, 17:03)
---------------------------------------------
Можно ли как-нибудь решить задачу таким образов. Если что подправите!

program program2;
var
c:char;
begin
write('Введите букву русского алфавита');read©;
case c of
а:writeln('Гласная');
е:writeln('Гласная');
у:writeln('Гласная');
о:writeln('Гласная');
ы:writeln('Гласная');
я:writeln('Гласная');
и:writeln('Гласная');
ю:writeln('Гласная');
э:writeln('Гласная');
й:writeln('Гласная');
else
writeln('Согласная');
end;
end.

 
AlexanderДата: Понедельник, 21.04.2008, 00:28 | Сообщение # 8
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Конечно можно, только константу лучше вынести, а ещё не забывайте брать символы в кавычки:
Code
const
    S='Гласная';
var
    c:char;
begin
    Write('Введите букву русского алфавита: ');
    ReadLn(c);
    case c of
       'а':writeln(S);
       'е':writeln(S);
       ...
       'я':writeln(S);
       'А':writeln(S);
       'Е':writeln(S);
       ...
       'Я':writeln(S)
    else
       writeln('Согласная');
end.

Но этот вариант во всех отношениях хуже- он будет гораздо медленнее работать и код тоже длиннее. Сделайте лучше через if. Оператор case используется в иных ситуациях.


Скажем дружно- нафиг нужно!

Сообщение отредактировал Alexander - Понедельник, 21.04.2008, 00:31
 
MAEDДата: Понедельник, 21.04.2008, 01:38 | Сообщение # 9
Знакомый
Группа: Пользователи
Сообщений: 17
Репутация: 0
Замечания: 0%
Статус: Offline
Alexander, Спасибо!!! Благодарю!!!

Добавлено (20.04.2008, 18:38)
---------------------------------------------
Напишите программу, запрашивающую возраст пользователя. Если ему менее 18 лет, сообщите, что он имеет право голосовать, в противном случае вычислите, через сколько лет ему будет предоставлено это право.

program program3;
var
V:byte;
begin
write('Введите Ваш возраст');
readln(V);
if V>=18 then
writeln('Вы имеете право проголосовать')
else
while V<=18 do
begin
V:=V+1
end;
end.

Как определить через сколько лет он сможет проголосовать???

 
AlexanderДата: Понедельник, 21.04.2008, 02:50 | Сообщение # 10
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Ну приехали, вычитанием естественно(18-V).

Скажем дружно- нафиг нужно!
 
MAEDДата: Понедельник, 21.04.2008, 03:01 | Сообщение # 11
Знакомый
Группа: Пользователи
Сообщений: 17
Репутация: 0
Замечания: 0%
Статус: Offline
Я вообще чайник! Чтобы определить наибольшее и наименьшее из трех чисел какими операторами надо пользоваться? (Выбора и еще какими??)
 
AlexanderДата: Понедельник, 21.04.2008, 03:12 | Сообщение # 12
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Quote
Чтобы определить наибольшее и наименьшее из трех чисел какими операторами надо пользоваться?

только условными.
Прочитайте это.


Скажем дружно- нафиг нужно!
 
MAEDДата: Понедельник, 21.04.2008, 16:05 | Сообщение # 13
Знакомый
Группа: Пользователи
Сообщений: 17
Репутация: 0
Замечания: 0%
Статус: Offline
Здравствуйте!!! Что-то не получается у меня!

program program1;
var
a,b,c:integer;
begin
write('a=');readln(a);
write('b=');readln(b);
write('c=');readln©;
if a>b and c then
writeln('a(max)=',a)
else if b>a and c then
writeln('b(max)=',b)
else if
c>a and b then
writeln('c(max)=',c)
end.

 
AlexanderДата: Понедельник, 21.04.2008, 16:54 | Сообщение # 14
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
"if a>b and c" - и что это по вашему означает? А это ознчает- если "a" больше результата коньюнкции между "b" и "c".
Прочитайте это.


Скажем дружно- нафиг нужно!
 
MAEDДата: Понедельник, 21.04.2008, 18:07 | Сообщение # 15
Знакомый
Группа: Пользователи
Сообщений: 17
Репутация: 0
Замечания: 0%
Статус: Offline
Написать программу, которая введет с клавиатуры двумерный массив b, состоящий из трех строк и пяти столбцов. Вывести на экран введенные элементы массива.

program program3;
var
b:array [1..3,1..5] of real;
i,j:byte;
begin
writeln('Введите значение массива:');
for i:=1 to 3 do
for j:=1 to 5 do
begin
write('b(',i,j,')=');
readln(b[i,j]);
end;
for i:=1 to 3 do
begin
for j:=1 to 5 do
write(b[i,j],' ');
end;
end.

Как вывести массив чтоб было 3 строки и пять столбцов, а то он выведет все в одну строку?

Добавлено (21.04.2008, 10:56)
---------------------------------------------
1)Написать программу в которой используется функция, сравнивает два целых числа и при этом выводит результат
A>B
A<B
A=B

function compare(x, y: integer): string;
begin
if x>y then compare := ' больше '
else
if x<y then compare := 'меньше '
else compare := ' равно ';
end;

var
a, b: integer;
begin
writeln('Введите A и B');
readln(a,b);
writeln(a, compare(a, b), b);
readln;
end.

Так можно решить эту задачу?

Добавлено (21.04.2008, 11:07)
---------------------------------------------
С помощью оператора While написать программу вывода всех четных чисел от 2 до 100 включительно.

program program1;
var
A:integer;
begin
A:=0;
while A<=100 do
begin
writeln('Вот четные числа',A);
A:=A+2;
end;
end.

Как сделать так, чтобы первый элемент(0) не выводился?

 
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск:

Copyright MyCorp © 2025
Используются технологии uCoz
javascript:;" rel="nofollow" onclick="loginPopupForm(); return false;