Заблокирован Статус: Не в сети Регистрация: 26.11.2005 Откуда: Ставрополь
Помогите пожалуйста решить задачу на qbasic. Очень надо. Курсовую через 3 дня сдавать, а задача не решена. Очень надеюсь на вашу помощь. Вот задача.
Составить программу для нахождения общей суммы выручки и прибыли по 34 торговым предприятиям. Указать средний размер этих показателей по первым 15 предприятиям. Для других – распечатать на экране из порядковый номер и наименоваения. Добавлено спустя 7 часов, 47 минут, 8 секунд Что, никто не знает как это решается?
подскажите пожалуйста
1. мне надо реализовать аналог icacls руками с использованием win api функций VISTA а я не знаю где про них можно почитать и какие конкретно использовать.
2. если я узнаю эти функции то как мне их использовать? прошу пример компилятора который сможет это сделать. и пример программы буквально 2- 3 строчки
или хотя бы скажите где хранятся метки об Integrity level процесса/файла
1 В заданном массиве, состоящем из n вещественных элементов (размерность задается именованной константой), вычислить: • Сумму элементов массива с нечетными номерами; • Сумму элементов массива, расположенных между первым и последним отрицательными элементами. Сжать массив, удалив из него все элементы, модуль которых не превышает 1. Освободившиеся в конце массива элементы заполнить нулями.
2 Дана целочисленная прямоугольная матрица. Определить произведение элементов в тех строках, которые не содержат отрицательных элементов.
program fil; uses crt; var i: integer; a: string ; c: char; ft:text; begin clrscr; assign (ft,'e:\t.txt'); reset(ft); read(ft,a); write(a); close(ft); writeln; for i:= 1 to trunc(length(a)/2) do begin c:=a[i]; a[i]:=a[length(a)+1-i]; a[length(a)+1-i]:=c; write(a[i]); end;
readln; end.
нада что бы строка выводилась задом наперёд а выводится токо вторая половина задом наперёд(мне показывали как это делается но я чё то не всё записал) и ещё надо
бы пробелы поудалять
Member
Статус: Не в сети Регистрация: 26.01.2006 Откуда: Одесса
FAINT
Код:
program fil;
uses crt;
var i: integer; a: string ; ft:text;
begin clrscr; assign (ft,'e:\t.txt'); reset(ft); read(ft,a); write(a); close(ft); writeln; for i:=length(a) downto 1 do if a[i] <> ' ' then //Чтоб пробелы не "удалялись", убери это условие write (a[i]); readln; end.
Выводит строку задом наперед, при этом не выводя пробелы.
_________________ Съешь еще этих мягких французских булок, да выпей чаю.
Заблокирован Статус: Не в сети Регистрация: 04.04.2007
помогите пожалуйста в написании программы (Ассемблер) задание такое- надо составить процедуру перемножающую два числа(например столбиком)..такое задание дали так как изучаем старый микроконролер не имеющий апаратной поддержки перемножения, а я в программировании полный ноль...программа не сложная на мой взгляд...буду очень благодарен тому кто поможет=).....прогой пользуюсь Atmel AVR Tools Studio 4(микроконтроллер ATmega 16-он вроде не старый и имеет поддержку апаратного перемножения но надо написать прогу перемножения столбиком)
скачать прогу можно отсюда http://www.atmel.ru/Software/Software.htm
Junior
Статус: Не в сети Регистрация: 29.05.2006 Откуда: Питер
Помогите пожалуйста написать курсовую на Си.Столкнулся с проблемой в компиляторе borland с++ 5,02 версии
"Info :Compiling C:\bc5\bin\proj0002.cpp
Error: GRAPHICS.H(20,52):Error directive: BGI graphics not supported under Windows"
Необходимо вывести 2 графика зависимости входного напр-я от времени и выходного напр-я от входного.Возможно ли это сделать в виндовс-компиляторе с #include <graphics.h> (лектор так сказал делать)?
вот код программы:(так кроме графиков и расчета ф-й еще несколько заданий,вроде они получаются)
Дан символьный файл f, содержащий произвольный текст длиной более 5000 слов. Слова в тексте разделены пробелами и знакми препинания. Получить 100 наиболее часто встречаймых слов и число их поевление.
Собственно суть: надо удалить каждое второе вхождение символа "a". Я удаляю, но пробелы остаються, как сделать так чтоб они тоже удалялись? Я понимаю, что нужно мутить с длиной строки, но не пойму что:oops: Помогите плз...
_________________ I don't know what you heard about me.
Какая-то хитрая конструкция . Неужели работает ? .
Гораздо проще объявить одномерный массив(char text[5000] к примеру) и при вводе позаботиться, чтобы пользователь не ввёл больше объявленного. Разделение на строки тут не нужно совсем - '\n' такой же символ, как и все остальные. А насчёт удаления символа 'a' есть несколько путей. Путь в лоб: отсеивать прямо на этапе ввода - сохраняем последний записанный символ и сравниваем с текущим - в случае если это две буквы 'a', то не записываем. Второй вариант это после ввода создавать новую строку из символов введённой(с фильтрацией) и по окончании выводить созданную строку. Есть ещё, конечно, вариант с модификацией(смещением блока влево на символ) на ходу строки. Но он посложнее в реализации и наиболее неэффективен.
Member
Статус: Не в сети Регистрация: 19.09.2004 Откуда: СПб
mein работает . И всё же по заданию надо именно динамический двумерный масссив, и на экране надо вывести ввёдённый и полученный масссивы. А вот про запись в темповую строку это правильно, но с условием чего-то туплю, не получаеться.(
PS Некоторые переменные там лишнии, они были получены, в ходе неправильных решений, и благополучно забыты:oops:, но не в этом суть.
_________________ I don't know what you heard about me.
Advanced member
Статус: Не в сети Регистрация: 09.03.2004 Откуда: Кишинёв
maestroDL Оно не может работать , т.к. это неправильно. Двумерный динамический массив несколько не так создаётся. Сначала выделяется память под количество строк, потом в цикле(либо сразу, либо во время ввода) выделяется память под каждую строку. После работы желательно память освободить(в обратном порядке). Типа того:
Код:
char **mas; int i; const int N=100,M=200; /* N - кол. строк, M - макс длина каждой строки */ mas = (char**) malloc( sizeof(char*) * N ); for( i=0; i < N; i++ ) mas[i] = (char*) malloc ( sizeof(char) * M );
/* работаем ... */
for( i=0; i < N; i++ ) free( mas[i] ); free(mas);
количество памяти, выделяемое под каждую строку, может быть разное.
maestroDL писал(а):
А вот про запись в темповую строку это правильно, но с условием чего-то туплю, не получаеться
Что именно не получается? Чтобы реализовать, нужно достаточно чётко представлять, что именно нужно. Что нужно делать, например, если букв 'a' будет больше двух подряд. Мысленно(или на бумаге) проделать это с тестовой строкой, а перевести на язык программирования это уже мелочи .
Count++; clrscr(); printf("\nNovaya zapis\n\n"); printf("Vvedite Marky (no more 15 symbols):"); scanf("%s",s[Count-1].mar); strupr(s[Count-1].mar); printf("Vvedite model (no more 15 symbols):"); scanf("%s",s[Count-1].mod); strupr(s[Count-1].mod); printf("Vvedite comlpektacyy (no more 15 symbols):"); scanf("%s",s[Count-1].comlpekt); strupr(s[Count-1].comlpekt); do { printf("Vvedite datu :"); scanf("%d",&s[Count-1].data); }while(s[Count-1].data<1); printf("Vvedite engine (no more 15 symbols):"); scanf("%s",s[Count-1].eng); strupr(s[Count-1].eng); printf("Vvedite Adres (no more 15 symbols):"); scanf("%s",s[Count-1].adr); strupr(s[Count-1].adr);
alfavit(); printf("New record is added\n"); getch(); return; }
void udal(){ int num=0; clrscr(); printf("\nUdalenie modely\n\n"); print_all(); while(num<1||num>Count){ printf("Vvedite nomer ctpoku na ydalenye:"); scanf("%d",&num); } print_head(); print(num-1); printf("deucTbuTeJlHo ydaJIuTb? (Y\\N)\n"); if((getch()=='y')||(getch()=='Y')){ strcpy(s[num-1].mar,'\0'); strcpy(s[num-1].mod,'\0'); strcpy(s[num-1].comlpekt,'\0'); strcpy(s[num-1].eng,'\0'); strcpy(s[num-1].adr,'\0'); s[num-1].data=0; alfavit(); Count--; printf("YdaJIeHo!.\n Press any key"); getch(); } return; }
void redact(){ bd temp; int num=0,i; clrscr(); printf("\nRedaktirovanie zapisi\n\n"); print_all(); while(num<1||num>Count){ printf("Enter number record for edit:"); scanf("%d",&num); } clrscr(); printf("You chosen record:\n"); print_head(); print(num-1); printf("\nEDIT\n\n"); printf("Vvedite marky (no more 15 symbols):"); scanf("%s",temp.mar); strupr(temp.mar); printf("Vvedite model (no more 15 symbols):"); scanf("%s",temp.mod); strupr(temp.mod); printf("Vvedite comlpektacyy (no more 15 symbols):"); scanf("%s",temp.comlpekt); strupr(temp.comlpekt); do { printf("Vvedite datu:"); scanf("%d",&temp.data); } while(temp.data<1); printf("Vvedite engine (no more 15 symbols):"); scanf("%s",temp.eng); strupr(temp.eng); printf("Vvedite Adres (no more 15 symbols):"); scanf("%s",temp.adr); strupr(temp.adr); printf("To4Ho xoTuTe u3MeHuTb 3anucb? (Y\\N)\n"); if((getch()=='y')||(getch()=='Y')){ strcpy(s[num-1].mar,temp.mar); strcpy(s[num-1].mod,temp.mod); strcpy(s[num-1].comlpekt,temp.comlpekt); s[num-1].data=temp.data; strcpy(s[num-1].eng,temp.eng); strcpy(s[num-1].adr,temp.adr); alfavit(); printf("Record is changed\n"); getch(); } return; }
Member
Статус: Не в сети Регистрация: 23.12.2004 Откуда: Беларусь, Минск
Вот для курсача сделал. Стараться не хотел...
На пробел стартуем-останавливаем (немного глючит обработка нажатия, может несколько раз надо тыкать), контролом стреляем, стрелками зумим, поворачиваемся.
Задача - не дать прорватся вражескому флоту.
Здравствуйте уважаемые форумчане, помогите мне пожалуйста в решение небольших заданий. Заранее спасибо !
Тема 1. Вычисление значения выражения
Реализовать вычисление заданного выражения как ассемблерную вставку в программе на языке Паскаль.
Программа на Паскале должна запрашивать значения переменных и выводить результат на экран.
Все переменные являются целочисленными.
(A * X + B) div ((C * X + D) div E)
Тема 2. Битовые операции. Упакованные данные
Программы реализуются как ассемблерные вставки в Паскаль.
Реализовать с помощью логических операций вставку заданного значения (0 или 1) в любой бита байта с потерей исходного значения.
Тема 3. Структуры. Записи
Программа должна быть реализована на языке ассемблера TASM.
Под записью подразумевается структура с упакованными данными.
Реализовать базу данных с полями «Фамилия», «Имя», «Отчество», «Пол», «Год рождения». Каждая запись должна представлять собой структуру с соответствующими полями. Интерфейс должен позволять:
1)Вносить новые записи
2)Удалять записи
3)Поиск записей по возрасту
4)Изменение возраста у найденных записей.
Тема 4. Процедуры
Реализовать подпрограмму, которая заменяет все заглавные буквы данной строки на строчные и наоборот.
Тема 5. Модульное программирование
В модуле команды должны быть реализованы в виде макросов.
Реализовать модуль, содержащий два макроса выделения целой и дробной части рационального числа.
Заблокирован Статус: Не в сети Регистрация: 26.07.2006
Хочу помочь одному человеку, но, самому все это сделать пока слабо Времени в обрез(Суббота и Воскресенье). За каждую решенную задачу огромное спасибо!
Цитата:
Задача 1. Создать класс для работы с матрицами. Включить функции (дружественные или члены класса) для
1)сложения матриц, 2)присвоения значения, 3)умножения матриц, 4)обращения к матричному элементу, 5)умножения матрицы на число, 6)транспонирования матрицы, 7)обращения матрицы, 8)вычисления детерминанта, 9)решения линейных уравнений, 8)вычисления наибольшего и наименьшего собственных значений, 9)приведения матрицы к диагональному виду методом вращений Якоби.
Задача 2. Средствами объектно-ориентированного программирования реализовать в С++ класс комплексных чисел. В число функций- членов должны входить функции вычисления модуля комплексного числа ,фазы, комплексного сопряжения, вывода комплексного числа на экран. Определить бинарные операции = , +, *, /, + = , * = . Определить унарную операцию -. Написать вызывающую программу.
Задача 3. Создать класс для работы с комплексными векторами. Определить операции = , +, -, *, + = , * = . Определить операцию взятия индекса [ ]. Написать функцию, использующую этот класс.
Задача 4. Создать шаблон функции для вычисления суммы элементов векторов, сотоящих из различных типов данных (например целых,вещественных,комплексных,матриц).
Задача 5. Создать шаблон класса для работы с векторами, содержащими различные типы данных. Определить операции = , +, *, + = , * = . Написать конструктор и деструктор.
Задача 6. Написать функцию интегрирования обыкновенного дифференциального уравнения методами
1) Эйлера, 2) Трапеций, 3) Рунге-Кутта4-го порядка с переменным шагом.
Задача 7. Написать функции для интегрирования системы обыкновенных дифференциальных уравнений методами
1) Эйлера, 2) Трапеций, 3) Рунге-Кутта 4-го порядка с переменным шагом.
Функция вычисления правых частей должны передаваться через список параметров . Все функции должны быть включены в собственную библиотеку.
Задача 8. Проинтегрировать уравнение движения заданного нелинейного колебательного контура. Результат интегрирования при различных начальных условиях представить на фазовой плоскости. Сравнить результаты интегрирования в окрестности сепаратрисы методами Эйлера и Рунге-Кутта 4-го порядка с переменным шагом. При интегрировании вести контроль за сохранением интеграла энергии.
Member
Статус: Не в сети Регистрация: 02.07.2005 Откуда: Спб
GrIfFiN7 если бы ты еще и язык программирования указал бы, то было-бы вообще шикарно
Народ, кто шарит в паскале плтз посмотрите курсовик - почти дописал, но есть 1 косяк с которым никак не справлюсь.
Задание такое - создать имитатор радиолокатора. Проблема в том, что удаление обьектов присходит только на правой половине радара, а на левой они по непонятной причине остаются :-0
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения