Помогите решить кучу задач!!! Скоро зачет!!!
|
|
MAED | Дата: Воскресенье, 20.04.2008, 22:21 | Сообщение # 1 |
Знакомый
Группа: Пользователи
Сообщений: 17
Статус: 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
Статус: Offline
| http://pascal-for-all.ucoz.ru/forum/15-191-1. Качаете книгу "Turbo Pascal 7.0 Начальный курс", читаете пару первых глав и за 20 минут делаете все эти задачки. А вот если будут конкретные вопросы, то мы на них ответим. И впредь не путайте "решение задач" и "помощь в решении задач".
Скажем дружно- нафиг нужно!
|
|
| |
MAED | Дата: Воскресенье, 20.04.2008, 22:51 | Сообщение # 3 |
Знакомый
Группа: Пользователи
Сообщений: 17
Статус: Offline
| Как в операторе выбора обозначить гласные буквы???
|
|
| |
Alexander | Дата: Воскресенье, 20.04.2008, 23:18 | Сообщение # 4 |
Всевышний
Группа: Модераторы
Сообщений: 475
Статус: Offline
| Например, можно составить множество, в котором будут присутствовать все гласные буквы русского алфавита и проверить, входит ли введённая пользователем буква в это множество. Не забудьте, что заглавные и строчные буквы различаются. Пошаговый алгоритм: 1) Задать множество из заглавных гласных букв русского алфавита. 2) Прочитать символ с клавиатуры. 3) Если введён строчный символ, то перевести его в верхний регистр. 4) Проверить, входит ли этот символ в множество, заданное на первом шаге и вывести ответ. Если все пункты ясны, то попробуйте реализовать это на паскале, а мы проверим и подправим, если нет, то спрашивайте.
Скажем дружно- нафиг нужно!
|
|
| |
MAED | Дата: Воскресенье, 20.04.2008, 23:29 | Сообщение # 5 |
Знакомый
Группа: Пользователи
Сообщений: 17
Статус: Offline
| Мы еще даже множество не проходили!!! Можете написать эту программу, а то я с ней уже много мучаюсь!!!
|
|
| |
Alexander | Дата: Воскресенье, 20.04.2008, 23:48 | Сообщение # 6 |
Всевышний
Группа: Модераторы
Сообщений: 475
Статус: Offline
| Тогда используйте сложное условие: Code if (c='А') or (c='Е') or ... or (c='Я') then ... Пошаговый алгоритм: 1) Прочитать символ с клавиатуры. 2) Если введён строчный символ, то перевести его в верхний регистр. 3) Проверить, удовлетворяет ли символ условию и вывести ответ. Вариант 2, тупее, но тоже рабочий- указать в условном операторе сразу 20 условий, т.е. перечислить и строчние и заглавные буквы, тогда останется только третий пункт. Quote Можете написать эту программу, а то я с ней уже много мучаюсь!!! Могу, но наша задача помочь вам научиться программировать или по крайней мере решать задачи.
Скажем дружно- нафиг нужно!
|
|
| |
MAED | Дата: Понедельник, 21.04.2008, 00:03 | Сообщение # 7 |
Знакомый
Группа: Пользователи
Сообщений: 17
Статус: 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
Статус: 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
Статус: 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
Статус: Offline
| Ну приехали, вычитанием естественно(18-V).
Скажем дружно- нафиг нужно!
|
|
| |
MAED | Дата: Понедельник, 21.04.2008, 03:01 | Сообщение # 11 |
Знакомый
Группа: Пользователи
Сообщений: 17
Статус: Offline
| Я вообще чайник! Чтобы определить наибольшее и наименьшее из трех чисел какими операторами надо пользоваться? (Выбора и еще какими??)
|
|
| |
Alexander | Дата: Понедельник, 21.04.2008, 03:12 | Сообщение # 12 |
Всевышний
Группа: Модераторы
Сообщений: 475
Статус: Offline
| Quote Чтобы определить наибольшее и наименьшее из трех чисел какими операторами надо пользоваться? только условными. Прочитайте это.
Скажем дружно- нафиг нужно!
|
|
| |
MAED | Дата: Понедельник, 21.04.2008, 16:05 | Сообщение # 13 |
Знакомый
Группа: Пользователи
Сообщений: 17
Статус: 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
Статус: Offline
| "if a>b and c" - и что это по вашему означает? А это ознчает- если "a" больше результата коньюнкции между "b" и "c". Прочитайте это.
Скажем дружно- нафиг нужно!
|
|
| |
MAED | Дата: Понедельник, 21.04.2008, 18:07 | Сообщение # 15 |
Знакомый
Группа: Пользователи
Сообщений: 17
Статус: 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) не выводился?
|
|
| |