Нужно решить эти задачки в free pascal. http://fastpic.ru/view/5/2010/1016/85adf2af8494a147352ef4dcf22c6519.jpg.html http://fastpic.ru/view/5/2010/1017/70e23bf2381b6e129c9af41a3f95959a.jpg.html (в долгу не останусь)
Сделал функцию для первой задачи Code: function Decide(a: integer): Integer; var temp:integer; begin if a = 5 then begin result := 25; end else begin temp:=a div 10; result := strtoint(inttostr(temp*(temp+1))+'25'); end; end; Работает как часы ))
1. Дано целое n. Чему равно произведение его цифр? (Программирование циклических процессов) 2. Даны действительные числа a, b, c и x, y. Выяснить, пройдет ли кирпич с ребрами a,b,c в прямоугольное отверстие со сторонами x и y. (Программирование ветвящихся процессов) Напишите пожалуйста данные программы на C# аттестационная неделя скоро
ребят, помогите с лабой.. ( Задание : Вывести изображение кривых второго порядка по варианту. В окне приложения изобразить не менее десяти фигур с разными параметрами. Вариант - Гипербола Требуемый Алгоритм построения фигуры В данной работе, в функции void PreparePage (void *data, int width, int height) организовать цикл по х и у, проходящий все значения ширины и высоты растра. В теле функции PreparePage произвести проверку на принадлежность точек графикам: если точка принадлежит фигуре, то она закрашивается; если точка не принадлежит - закрашивается в точку цвета фона.
Посоветуйте с решение задачи на Java. "Используя коллекции нужно реализовать структуру "черный ящик", хранящую множество чисел и имеющую внутреннний счетчик К. Структура должна поддерживать операции добавления числа в множество и возвращение К-го по минимальности числа из множества." Я кагбэ не могу понять сложность и суть этой задачи, в джаве есть классы типа HastSet и т.д. с помощью которых можно быстро решить эту задачу, но препод в универе сказал , что эта самая сложная задача из всех, что есть, ну т.е. должна быть какая-то загвоздка.
В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) номер минимального по модулю элемента массива; 2) сумму модулей элементов массива, расположенных после первого отрицательного элемента. Сжать массив, удалив из него все элементы, величина которых находится в интервале [a,b]. Освободившиеся в конце массива элементы заполнить нулями. кто поможет?
Code: [B][COLOR=Red]1)[/COLOR][/B] double a[n]={, , , , , , , , , , ,} ; int i; int min;//значение минимального элемента int i_min;//номер минимального элемента min=fabs(a[0]); for (i=0;i<10;i++) if (fabs(a[i])<min) {min=fabs(a[i]); i_min=i; } ; cout<<i_min; Code: [B][COLOR=Red]2)[/COLOR][/B]double array[n]={, , , , , , , , , } ; int i=0; int t; double sum=0.0; while (array[i]>=0) { i++; } t=i+1; for(i=t;i<10;i++) sum+=fabs(array[i]); cout<<sum; В первом задании номера отсчитываются с нуля,если выводить надо с 1,то пишешь i_min=i+1
Привет! помогите дописать 3 лабу) проблема не в программирование.. проблема в математике =( ну и чуть в программировании....уже сума схожу))) вот ДОК http://zalil.ru/29836767 Лабораторная работа №3 Программирование циклов с неизвестным заранее числом повторений Цель работы: освоение средств языка С++ для описания итерационных циклов и закрепление навыков использования их при программировании. Вариант 20: Функция arcctg x π/2-(x-x^3/3+x^5/5-x^7/7+⋯) Область сходимости: |x|<1 #include <iostream.h> #include <conio.h> #include <math.h> void main() { double X, eps; clrscr(); cout << "BBeguTe 3HA4eHue ApryMeHTa X="; cin >> X; cout << "T04HOCTb EPS="; cin >> eps; double F=X, do { } While(fabs(a)>=eps); cout << "IIpu6/\u}I{eHHoe 3HA4eHue arcctg x=" << F; cout << "To4HOE 3HA4eHue sin x=" << arcctg(X); } Заранее спасибо).. нужно сделать в 2х вариантах с пост условием и пред... или как там.. .короче 2 вида циклов)))
помогите плиз Опрeделить дату cледующего дня +дeнь недели (с использовaнием перечисляемого типa) помогите чет не пашет! const CDelim= '.'; {Разделитель} CMonth= 12; {Количество месяцев в году} {Количество дней в каждом месяце} CDay: array[1..CMonth] of byte= (31,28,31,30,31,30,31,31,30,31,30,31); type {Формат даты} TDate= record day: byte; month: byte; year: word; end; {-----------------------------------------------} { Функция парсит строку в нужный нам формат TDate. Большая ф-ия только из за того, что предусмотрены все варианты неправильного ввода. Если данные всегда задаются правильно, то можно убрать все условия об ошибках} function ParseDate (s: string; var date: TDate): byte; var i, err: byte; {Позиция поиска, ошибка} begin i:= pos (CDelim, s); {Находим разделитель} if (i = 0) then {"Не правильный формат даты"} begin ParseDate:= 1; exit; end; val(copy (s, 1, i-1), date.day, err); {Выдёргиваем занчение дня} if (err <> 0) then {"Не правильно введён день"} begin ParseDate:= 2; exit; end; delete (s, 1, i); {Убираем использованную часть} i:= pos (CDelim, s); {Находим разделитель} if (i = 0) then {"Не введён месяц"} begin ParseDate:= 3; exit; end; val(copy (s, 1, i-1), date.month, err); {Выдёргиваем занчение месяца} if (err <> 0) then {"Не правильно введён месяц"} begin ParseDate:= 4; exit; end; delete (s, 1, i); {Убираем использованную часть} val(copy (s, 1, length (s)), date.year, err); {Выдёргиваем занчение года} if (err <> 0) then {Не правильно введён год} begin ParseDate:= 5; exit; end; {Проверяем правильность ввода месяца (1 <= месяц <= 12)} if (date.month > CMonth) or (date.month < 1) then begin ParseDate:= 6; exit; end; {Проверяем правильность ввода дня месяца} if (date.day > CDay[date.month]) or (date.day < 1) then begin ParseDate:= 7; exit; end; ParseDate:= 0; end; {-----------------------------------------------} procedure IncDate (var date: TDate); begin inc (date.day); {Если после инкремента день завышен} if (date.day > CDay[date.month]) then begin date.day:= 1; inc (date.month); {Если после инкремента месяц завышен} if (date.month > CMonth) then begin date.month:= 1; inc (date.year); end; end; end; {-----------------------------------------------} var str: string; date: TDate; begin writeln ('Введите дату (пример: 12.02.2009)'); readln (str); case (ParseDate (str, date)) of 0: begin IncDate (date); writeln (date.day, CDelim, date.month, CDelim, date.year); end; 1: writeln ('Не правильный формат даты'); 2: writeln ('Не правильно введён день'); 3: writeln ('Не введён месяц'); 4: writeln ('Не правильно введён месяц'); 5: writeln ('Не правильно введён год'); 6: writeln ('Такого месяца не существует'); 7: writeln ('Для данного месяца не существует такого дня'); end; end.
лабораторную работу Здравствуйте! Пожалуйста помогите выполнить лабораторную работу на любом языке. http://i062.radikal.ru/1010/3c/3964847566b3.jpg
1) Через оператор For.Вывести на экран таблицу tg(x),сtg(x) (по горизонтали) при изменении аргумента от 0° к 90° с шагом 5° (выведение по вертикали). В программе предусмотреть невозможность деления на 0. 2) Через оператор IF.Переменной Z присвоить максимальное значение действительных переменных X,y в случае, когда X<0, и минимальное значение X,y в противоположном случае. Вывести на экран все значения
Друзья, я был бы вам премного благодарен за простейшую програмку на паскале - решалка кубических уравнений писать несколько минут, а моей благодарности не будет предела! (если вам интересна зелёная репутация, пишите)
Помощь в сортировке Уважаемые форумчане, помогите пожалуйста разобраться с данной задачей, а точнее помочь в написании условия сортировки. Задача: Дана последовательность целых чисел, все элементы, не равные нулю перенести, сохраняя их порядок в начало последовательности, а нулевые в конец. Заранее благодарен за помощь. Code: //--------------------------------------------------------------------------- #include <conio.h> #include <vcl.h> #pragma hdrstop #include <math.h> #include <stdio.h> //--------------------------------------------------------------------------- #pragma argsused int main() { int i, j, n ,a[7]; clrscr(); randomize(); for (i = 0; i < 7; i++) a[i]=random(5); printf("Isxodna9 stroka:"); for (i = 0; i < 7; i++) printf("%2d",a[i]); //Здесь ниже должно быть правильное условие, с ним разобраться не могу for(i = 0 ; i < 7 ; i++) { for(j = 0 ; j < 7; j++) { if(a[j] < a[j+1]) { n = a[j]; a[j] = a[j+1] ; a[j+1] = n; } } } printf("\n"); printf("Gotova9 stroka: "); for (j = 0; j < 7; j++) printf("%2d",a[j]); getch(); return 0; } //---------------------------------------------------------------------------
Всем привет! Есть рекурсивный алгоритм быстрой сортировки Code: #include <iostream> using namespace std; void bs(int* s_arr,int first, int last) { int i = first, j = last, x = s_arr[(first + last) / 2]; do { while (s_arr[i] < x) i++; while (s_arr[j] > x) j--; if(i <= j) { if (i < j) swap(s_arr[i], s_arr[j]); i++; j--; } } while (i <= j); if (i < last) bs(s_arr,i, last); if (first < j) bs(s_arr,first,j); } int main() { int n, a[]={22, 2, 15, 224, 25, 1, 8, 39, 77, 94, 54,78,21,56}; //n - количество элементов cout<<"Do sortirovki:"; for (n=0;n<14;n++) printf("%d ",a[n]); printf("\n\n"); bs(a,0,13); cout<<"Posle sortirovki:"; for (n=0;n<14;n++) printf("%d ",a[n]); printf("\n\n"); getchar(); return 0; } Может кто-нибудь помочь преобразовать эту программу для использования рекурсивного параллелизма,(Пожалуйста!) Нашел еще такую вот информацию Быстрая сортировка с использованием параллельных секций: Code: void QuickSort (int numList[], int nLower, int nUpper) { if (nLower < nUpper) { // Разбиение интервала сортировки int nSplit = Partition (numList, nLower, nUpper); #pragma omp parallel sections { #pragma omp section QuickSort (numList, nLower, nSplit - 1); #pragma omp section QuickSort (numList, nSplit + 1, nUpper); } } } а что делать дальше не понимаю((( Помогите пожалуйста!
прошу помочь! Нужна функция на c++. задан массив char str[256] в него вводят данные с клавиатуры. Необходимо проверить его на то что ввели натуральное число, а не половину символов таблицы ASCII. Спасибо