Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
Гость1232345
1

Посоветуйте, как решить 2 небольшие задачи

17.07.2008, 14:21. Показов 1630. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Это задачи по практике в институте.
1. Пусть цвета экрана имеют номера 0, 1, ..., k. Высветить все точки экрана (или точки некоторой прямоугольной области) различными цветами, используя для точки с координатами i, j цвет с номером, равным остатку от деления |m| на k+1, где где m может быть взято как i+j.
2. Пусть a и b -- файлы, k -- натуральное число. Будем говорить, что файлы a и b согласованно k-упорядоченны, если в одном файле число упорядоченных групп меньше на единицу, чем в другом, то неполной может быть только последняя группа более длинного файла.

Я знаю остновные средства языка, т.ч. в к первой задаче вопрос, как выводить эти цвета и точки.
А насчёт второй задачи, я вообще без идеи, что там нужно сделать.

Есть какие-нибудь соображения?
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.07.2008, 14:21
Ответы с готовыми решениями:

Помогите решить задачки небольшие
Помогите решить задачи с "Цикл с предусловием." Задачи : 1) Среди чисел 1, 4, 9, 16, 25, ......

Небольшие задачи с массивами
Доброго времени суток.Изучаю массивы,пытаюсь решить задачи.Написал,но не выходит.Нужен совет. 1)В...

Небольшие задачи VBA в Excel
1. Написать процедуру, вычисляющую значения sin(k) и выводящую отрицательные значения в k-ю строку...

Как можно решить задачи на С# в форме!
Не могу решить, люди добрые подскажите хоть кто-нибудь! 1. Дана строка, состоящая из русских...

7
13208 / 6596 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
17.07.2008, 18:56 2
1.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
uses graph;
const k=15;
var gd,gm:Integer;
    i,j,m,c:Integer;
begin
    gd := detect;
    InitGraph(gd,gm,'');
    if GraphResult<>grOK then begin
        WriteLn('Graphics error: ', GraphErrorMsg(GraphResult));
        ReadLn;
        Halt(1);
    end;
 
    for j:=0 to 479 do begin
        for i:=0 to 639 do begin
            m := i+j;
            c := m mod (k+1);
            PutPixel(i,j,c);
        end;
    end;
 
    ReadLn;
    CloseGraph;
end.
0
25 / 20 / 4
Регистрация: 13.03.2008
Сообщений: 79
17.07.2008, 19:13 3
Я бы немного исправил программу, ведь неизвестно заранее какой режим будет инициирован, поэтому k надо сделать переменной, а не константой, и присвоить ей значение k:= GetMaxColor; к тому же не известны и размеры экрана заранее, надо использовать функции GetMaxX и GetMaxY; тогда программа будет выглядеть так:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
uses graph;
var gd,gm:Integer;
    i,j,m,c, k:Integer;
begin
    gd := detect;
    InitGraph(gd,gm,'');
    if GraphResult<>grOK then begin
        WriteLn('Graphics error: ', GraphErrorMsg(GraphResult));
        ReadLn;
        Halt(1);
    end;
    k:= GetMaxColor;
    for j:=0 to GetMaxY-1 do begin
        for i:=0 to GetMaxX-1 do begin
            m := i+j;
            c := m mod (k+1);
            PutPixel(i,j,c);
        end;
    end;
    ReadLn;
    CloseGraph;
end.
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
17.07.2008, 20:36 4
Вообще-то К можно вводить как переменную, разные картинки будут
begin
write('k=');readln(k);
gd := detect;
0
Гостьdasgsf
17.07.2008, 20:52 5
Большое спасибо, но программа выводит: "Graphics error: no error".
При этом GraphResult и grOK равны нулю, странно что сработал if.
Если if убрать, то программа выводит: "BGI error: graphics not initialized (use InitGraph)"
Гостьwefg
17.07.2008, 20:56 6
Забыл сказать. Компилятор Turbo Pascal 7.1, ОС WinXP SP3, запущенная через VMWare.
1 / 1 / 2
Регистрация: 19.10.2009
Сообщений: 44
20.02.2010, 11:55 7
Здравствуйте,у меня похожая задача,только мне нужно задать прямоугольную область екрана,. Подскажите,где ошибка:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
uses crt,graph;
var gd,gm:Integer;
    i,j,i1,j1,a,b,c,m:word;
begin
clrscr;
 write('“Введите значения a и b-'); read(a,b);
  write('Введите координаты левого верхнего угла*-'); read(i1,j1);
    gd := detect;
    InitGraph(gd,gm,'');
    if GraphResult<>grOK then begin
        WriteLn('Graphics error: ', GraphErrorMsg(GraphResult));
        ReadLn;
        Halt(1);
    end;
 
    for j:=j1 to j1+b-1 do begin
        for i:=i1 to i1+a-1 do begin
            m := i+j;
            c := m mod 16;
            PutPixel(i,j,c);
        end;
    end;
    ReadLn;
    CloseGraph;
end.

Все,разобралась,нужно было ввести repeat until Keypressed;
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
20.02.2010, 12:14 8
hohotushka, Исправьте в начале 2 раза read на readln
1
20.02.2010, 12:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.02.2010, 12:14
Помогаю со студенческими работами здесь

Всем привет) Люди, подскажите, как решить 2 задачи по физике?
1. Колебания источника задаются уравнением S(t) = A·cos(200t), см. Найти значения моментов времени,...

Решить задачи
а) вычислите определенный интеграл б) вычислите неопределенный интеграл Практическая работа...

Решить задачи
Помогите решить задания пожалуйста.Заранее благодарю! №1 №2 №3

Решить задачи
Мне нужно написать коды к этим задачам.( Все пишут в Паскале). Но если можете мне помочь в Бейсике....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru