Перейти к содержанию
СофтФорум - всё о компьютерах и не только

Заказы "Сделайте все за меня"


Рекомендуемые сообщения

Irina20

#include<stdio.h>#include<string.h>int main(){char t[255]=" ",s[255]=""; int i,n; puts("Stroka?"); gets(t+1); for(i=strlen(t),t[i-1]=' ';i>=0;--i) {if(t[i]>' ' && t[i+1]<=' ')n=i;if(t[i]<=' ' && t[i+1]>' ')strncat(s,t+i,n-i+1);}strcat(s,"."); puts(s+1); getchar(); return 0;}
Изменено пользователем Тролль
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

Доброго времени суток.Помогите пожалуйста с программой на языке С.

Создать статический целочисленный массив A[N] и заполнить его случайными значениями в диапазоне от 0 до N. Создать второй, динамический массив и выбрать в него из массива A[N] все элементы, значения которых больше, чем среднеарифметическое значение элементов этого массива. Количество элементов второго массива должно точно равняться числу элементов массива A[N] больших, чем среднеарифметическое значение элементов этого массива.

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

Ссылка на комментарий
Поделиться на другие сайты

(Lucky)

#include <stdlib.h>#include <stdio.h>#include <time.h>#define n 20int main(){int i,j,m,a[n],*v; float s;srand(time(NULL)); for(i=0;i<n;i++)a[i]=rand()%(n+1);for(i=0;i<n;i++)printf("%4d",a[i]); printf("\n");s=0; for(i=0;i<n;i++)s+=a[i]; s/=n; m=0; for(i=0;i<n;i++)if(a[i]>s)m++;if((v=(int*)malloc(sizeof(int)*m))==NULL){printf("Out of memory!\n");exit(1);}j=0; for(i=0;i<n;i++)if(a[i]>s)v[j++]=a[i];for(i=0;i<m;i++)printf("%4d",v[i]); printf("\n");free(v); getchar(); return 0;}
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

  • 3 недели спустя...

Помогите решить в Паскале

1.Найти периметр и площадь треугольника по координатам его вершин.

2.По длинами сторон треугольника определить - треугольник равнобедренный, равносторонний или произвольный.

Ссылка на комментарий
Поделиться на другие сайты

Riki_Tiki_Tavi

1.Найти периметр и площадь треугольника по координатам его вершин.
var x1,x2,x3,y1,y2,y3,a,b,c,p,s:real;begin   write('x1 y1 x2 y2 x3 y3: '); readln(x1,y1,x2,y2,x3,y3);   a:=sqrt(sqr(x1-x2)+sqr(y1-y2));   b:=sqrt(sqr(x2-x3)+sqr(y2-y3));  c:=sqrt(sqr(x3-x1)+sqr(y1-y3));   p:=(a+b+c)/2;  s:=sqrt(p*(p-a)*(p-b)*(p-c));   writeln('p=',p:0:2,'    s=',s:0:2); readln   end.
По длинами сторон треугольника определить - треугольник равнобедренный, равносторонний или произвольный
var a,b,c:real; beginwrite('a b c ? '); readln(a,b,c); if(a+b>c)and(b+c>a)and(a+c>b)then   if(a=b)and(b=c)then writeln('It is an equilateral triangle')    else        if(a=b)or(a=c)or(b=c) then writeln('It is an isosceles triangle')       else writeln('It is a scalene triangle')else writeln('It is not a triangle');  readlnend.

Данные вводятся через пробелы.

  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Помогите пожалуйста на Паскале решить

Написать программу, по которой на экран выводится словесное запись введенного целого двузначного числа. например,

"-35: Минус тридцать пять".

И расскажите пожалуйста что тут делается в программе(постепенно какие где функции и тд.)

Var A,B,C: char;

begin writeln('a-, b-');

readln(a,b);

if ord(b)<ord(a) then

begin b:=a;

a:=b;

end;

if abs(ord(a)-ord(b))>=2 then

begin writeln(succ(a));

readln;

end

else if (ord(b)=90) or (ord(b)=122) then

begin writeln(pred(a));

readln;

end

else begin writeln(succ(b));

readln;

end;

end.

Ссылка на комментарий
Поделиться на другие сайты

Riki_Tiki_Tavi

Написать программу, по которой на экран выводится словесное запись введенного целого двузначного числа
const a:array[0..19]of string[19]=('','one','two','three','four','five','six','seven','eight','nine','ten','eleven','twelve','thirteen','fourteen','fifteen','sixteen','seventeen','eighteen','nineteen');b:array[2..9]of string[19]=('twenty ','thirty ','fourty ','fifty ','sixty ','seventy ','eighty ','ninety ');var i:integer; s:string; begin readln(i); s:=''; if i<0 then s:='minus '; i:=abs(i);case i of 0: s:='null'; 1..19: s:=s+a[i]; 20..99: s:=s+b[i div 10]+a[i mod 10] end; writeln(s); readln end.

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

P.S. Подправил - слегка увеличил размер строк на случай перевода на русский, так как в русском языке названия чисел длиннее.

Что делается в приведенной тобой программе, понятия не имею, кроме того, что временами встречается легкий, возможно безвредный, бред вроде begin b:=a; a:=b; end;

Изменено пользователем Тролль
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

Доброго времени суток!

Суть вопроса:

Есть скриптик (внизу прилагается), написан на питоне. Питон на компе установлен. Но для использования этого скрипта мне приходится всякий раз вводить в командную строку строчку примерно такого вида:

С:\python27\python.exe С:\python27\rec.py С:\photo\картинка.jpg C:\photo\new\1-картинка.jpg

Не мог бы кто-нибудь изобразить для меня что-то вроде программулины, которая бы позволяла вызывать питона, открывать скрипт, позволить мне выбрать папку которую этот скрипт должен обработать, указать папку назначения для нового файла и нажать кнопку пуск. При этом, как вы видите из вышеприведённой строки файл "картинка.jpg" после обработки его скриптом rec.py переименовывается и кладётся в другую папку с новым именем "1-картинка.jpg".

То есть, по большому счёту, насколько я понимаю, эта программка должна считывать имена файлов в исходной папке и под каждый из них вызывать питона и скрипт, переименовывать и складывать в папку назначения.

Ну, в общем, как-то так, наверное...

Буду очень признательна за такую штуку!

В базе 8 173 файла и забивать каждый из них в командную строку, сами понимаете - жуть на месяц!

i

Уведомление:

Добавлю собственную просьбу помочь...

rec.zip

rec.zip

Изменено пользователем Yezhishe
Ссылка на комментарий
Поделиться на другие сайты

Всем привет)

Ребята помогите,есть вот задача

Запрограммировать проверку тестового задания на умножение натуральных чисел в пределах сотни. Задача подать в

форме выбора одного из нескольких предложенных вариантов ответов. Для каждого из вариантов предусмотреть

вывод на экран соответствующего объяснения

program Project4;

{$APPTYPE CONSOLE}

uses

SysUtils;

var x,y,a,b,c,d:Integer;

begin

Write('x,y-');

Readln(x,y);

a:=x*y;

b:=(x-1)*y;

c:=x*(y-2);

Writeln('warianty:1)',a,', 2)',b,', 3)',c);

Write('Wash wybir- ');Readln(d);

case d of

1:Writeln('prawylno');

2:Writeln('ne prawylno');

3:Writeln('ne prawylno');

else Writeln('takogo warianta ne isnye');

end;

Readln;

end.

end.

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

Ссылка на комментарий
Поделиться на другие сайты

Riki_Tiki_Tavi

помогите сделать так чтобы ответ в задаче правильный был постоянно не а, а рандомно
Изменить таблицу умножения я никак не могу. Сделать, чтобы выдавался правильный результат умножения, можно.

Замени конец программы, начиная с case, на

if a=d then Writeln('prawylno') else Writeln('ne prawylno');Readln;end.
Ссылка на комментарий
Поделиться на другие сайты

Riki_Tiki_TaviИзменить таблицу умножения я никак не могу. Сделать, чтобы выдавался правильный результат умножения, можно.

Замени конец программы, начиная с case, на

if a=d then Writeln('prawylno') else Writeln('ne prawylno');Readln;end.

Извините, но вы не правильно меня поняли, мне нужно чтобы ответ был рандомно.У меня в программе правильный ответ всегда на 1 стоит, а я хочу чтобы оно постоянно менялось, то есть, то на 2, то на 3 вариант.Функция рандомайз.

Ссылка на комментарий
Поделиться на другие сайты

Riki_Tiki_Tavi

Вообще-то я не вижу, зачем при проверке знания таблицы умножения подсказывать ответы. И почему, если уж так нужны подсказки, не взять в качестве неверных ответов просто случайные числа, не совпадающие с правильным ответом. Но сделаем, как просят:

program Project4;{$APPTYPE CONSOLE}uses SysUtils;var x,y,i,j,d:Integer; a:array[1..3]of Integer;beginrandomize; Write('x y: '); Readln(x,y);a[1]:=x*y; a[2]:=(x-1)*y; a[3]:=x*(y-2);for i:=3 downto 1 do begin j:=1+random(i); d:=a[j];a[j]:=a[i];a[i]:=d end;Writeln('warianty:1) ',a[1],', 2) ',a[2],', 3) ',a[3]);Write('Wash wybir warianta: '); Readln(d);if d in[1..3] then if a[d]=x*y then Writeln('prawylno') else Writeln('neprawylno')else Writeln('takogo warianta ne isnye');Readln end.
Оффтоп
Я еще отлично помню, как сдавал своей учительнице, Татьяне Васильевне, таблицу умножения в два приема - в первый раз я выучил только половину ответов, а недостающие досчитывал на ходу, скажем, 7*8 равно 7*7 (это, я помнил, 49) плюс еще 7... Татьяна Васильевна долго меня мучила, потом сказала, что не понимает, знаю я таблицу умножения или нет - отвечать-то я отвечал, но с большим запаздыванием, будто с потолка читал - и отправила меня доучивать проклятую таблицу к завтрашнему дню без отметки. К следующему дню я, конечно, ее доучил :)
Изменено пользователем Тролль
  • Upvote 2
Ссылка на комментарий
Поделиться на другие сайты

Здраствуйте. Спросить хочу не так о програме, а скорее по алгоритму. Стандартная кодировка Хаффмана и еще какого-то типа. Для сообщения с 4 символов в алфавите выглядит так:

вероятности код

0,1                0             00,25               1 0,3                0             10,35               1 

Тоисть разбиваем вероятности так, что б приблизительно равно было в обеих частях, етим групам проставляем 0,1 . и продолжаем так пока каждый символ не получит код. В приведенном случае коды символов: 00,01,10,11.

В задании нужно написать программу для обработки большого текста и кодировки всех символов в нем. Собственно загвоздка в реализации самого кодирования, используемые структуры и тп. Исходные данные - строка со всеми символами алфавита текста и масив вероятностей. Вероятности посортированы по возрастанию.

Изменено пользователем core_st
Ссылка на комментарий
Поделиться на другие сайты

Составить программу для обучения переводу чисел из десятичной системы счисления в 16-ричную и обратно. Программа должна предлагать десятичное (16-ричное) число, выбранное с помощью датчика случайных чисел, обучающийся – назвать это число в 16-ричной (десятичной) системе счисления. Причем, должен быть контроль за временем на размышление.

Помогите, пожалуйста...

Составить на С/С++ или С#

:(

!

Предупреждение:

Размещение в разных темах одного и того же поста (кросспостинг) ведёт не к ускорению решения вопроса, а - к штрафу.

Не делайте так больше, пожалуйста...

Изменено пользователем Yezhishe
Ссылка на комментарий
Поделиться на другие сайты

Serty

#include<time.h>#include<stdio.h>#include<conio.h>#include<string.h>#include<stdlib.h>float in_time(char *s,int nm,float tm){clock_t in; char c; int k=0; float t; in=clock(); while(1){if((t=float(clock()-in)/float(CLOCKS_PER_SEC))>tm)break;if(kbhit()){c=getch(); putchar©; if(c==13)break; if(k<nm)s[k++]=c;}}while(k<nm)s[k++]=0; return t;}int main(){int q=0,delay=20; long k,m; srand(time(NULL)); char p[10]; float f; printf("for exit enter 0\n\n"); while(1){k=rand()%900+100; q=1-q; if(q)printf("dec->hex: %ld\n",k); else printf("hex->dec: %lX\n",k);f=in_time(p,8,delay); if(*p=='0')break;if(q){sscanf(p,"%lX",&m); if(m==k)printf("\ntrue!"); else printf("\nIt must be %lX",k);}else {sscanf(p,"%ld",&m); if(m==k)printf("\ntrue!"); else printf("\nIt must be %ld",k);}printf("\n\n\n");}}

Выдает попеременно задачки на перевод из dec в hex и обратно. Числа для перевода выбираются случайными от 100 до 999. Время ожидания ввода ответа можно изменить изменением значения delay. При вводе после ввода переведенного числа можно нажать сразу Enter, чтобы не ждать. Программа зациклена, выход вводом 0.

Проверил на Dev-C++. Возможно, в VS kbhit надо заменить на _kbhit.

Изменено пользователем Тролль
Ссылка на комментарий
Поделиться на другие сайты

Кто может на паскале напишите программу

Посчитать: 7fa4ab700976.jpg

Ссылка на комментарий
Поделиться на другие сайты

Riki_Tiki_Tavi

var k,m,n:integer; x,s:real;begin write('x n ? '); readln(x,n); s:=0; for k:=1 to n do for m:=k to n do s:=s+(x+k)/m; writeln(s:0:4); readln end.

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

Изменено пользователем Тролль
  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

Riki_Tiki_Tavi

var k,m,n:integer; x,s:real;begin write('x n ? '); readln(x,n); s:=0; for k:=1 to n do for m:=k to n do s:=s+(x+k)/m; writeln(s:0:4); readln end.

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

Не отрицаю))Спасибо тебе)

Ссылка на комментарий
Поделиться на другие сайты

Привет всем если таковые есть. Помогите подправить программку. В нее встроено ограничение работы по дате. Т.е. 30.08.11 он прекратила работу. Прогу могу выслать на емайл.

!

Предупреждение:

Внимательно читаем Правила Форума. Особое внимание можно уделить п.4 Запретительной части.

Изменено пользователем Yezhishe
Ссылка на комментарий
Поделиться на другие сайты

Serty

#include<time.h>#include<stdio.h>#include<conio.h>#include<string.h>#include<stdlib.h>float in_time(char *s,int nm,float tm){clock_t in; char c; int k=0; float t; in=clock(); while(1){if((t=float(clock()-in)/float(CLOCKS_PER_SEC))>tm)break;if(kbhit()){c=getch(); putchar©; if(c==13)break; if(k<nm)s[k++]=c;}}while(k<nm)s[k++]=0; return t;}int main(){int q=0,delay=20; long k,m; srand(time(NULL)); char p[10]; float f; printf("for exit enter 0\n\n"); while(1){k=rand()%900+100; q=1-q; if(q)printf("dec->hex: %ld\n",k); else printf("hex->dec: %lX\n",k);f=in_time(p,8,delay); if(*p=='0')break;if(q){sscanf(p,"%lX",&m); if(m==k)printf("\ntrue!"); else printf("\nIt must be %lX",k);}else {sscanf(p,"%ld",&m); if(m==k)printf("\ntrue!"); else printf("\nIt must be %ld",k);}printf("\n\n\n");}}

Выдает попеременно задачки на перевод из dec в hex и обратно. Числа для перевода выбираются случайными от 100 до 999. Время ожидания ввода ответа можно изменить изменением значения delay. При вводе после ввода переведенного числа можно нажать сразу Enter, чтобы не ждать. Программа зациклена, выход вводом 0.

Проверил на Dev-C++. Возможно, в VS kbhit надо заменить на _kbhit.

А можно ту же самую программку, только на C#?

Заранее благодарен!

Ссылка на комментарий
Поделиться на другие сайты

помогите пожалуйста доделать мою программу на си++

Нужно чтобы в переменную b невозможно было ввести символ...

Code

#include "stdafx.h"#include <conio.h>#include <stdio.h>int _tmain(int argc, _TCHAR* argv[]){char zn,q;int a,b;float fa, fb;//float c;bool f = false, f1,n = true;do{do{printf("Vvedite a v diapazone OT -2 147 483 648 DO 2 147 483 647\n ");flushall();scanf("%f%c",&fa,&q);if (q!=10) {printf("Neverno!! "); n = false;}else n = true;}while ((n == false) || fa < -2147483648.0 || fa > 2147483647.0);a = fa;do{printf("Vvedite b v diapazone OT -2 147 483 648 DO 2 147 483 647\n");flushall();scanf("%f%c",&fb,&q);if (q!=10) {printf("Neverno!! "); n = false;}else n = true;}while ((n == false) || fb < -2147483648.0 || fb > 2147483647.0);b = fb;do{do{printf("Vvedite operaciu: ");flushall();scanf("%c%c",&zn,&q);if (q!=10) {printf("Neverno!! "); n = false;}else n = true;}while (n == false);switch(zn){case '+': {float c = (float)a + (float)b;if ((c < -2147483648.0) || (c > 2147483647.0)){printf("Perepolnenie!\n");f1=false;f=false;}else{printf("%i \n",(int)c); f = true; f1 = true;}break;}case '-': {float c = (float)a - (float)b;if ((c < -2147483648.0) || (c > 2147483647.0)) {printf("Perepolnenie!\n"); f1=false; f=false; }else{printf("%i \n",(int)c); f = true; f1 = true;}break;}case '*': {float c = (float)a * (float)b;if ((c < -2147483648.0) || (c > 2147483647.0)){printf("Perepolnenie!\n"); f1=false; f=false;}else{printf("%i \n",(int)c); f = true; f1 = true;}break;}case '/': {float c = 0.0;if (b!=0) {c = (float) a / (float)b;if ((c < -2147483648.0) || (c > 2147483647.0)){printf("Perepolnenie!\n"); f1 = false; f = false;}else{printf("%i \n",(int)c); f = true; f1 = true;}break;}else printf("Delenie na 0!!!\n"); f = true; f1 = false; break;}default: {printf("Neverno!!! "); f = false; flushall();}}}while(f == false);}while(f1 == false);_getch();return 0;

}

Ссылка на комментарий
Поделиться на другие сайты

temich5000

Ну, функции scanf безразлично, что ты там ввел, символ или ежа в сапогах, она берет биты по указанному ей адресу и интерпретирует их как код числа. Так что если ты хочешь, чтобы в переменную b невозможно было ввести символ, ты должен сам разбираться, что там ввели. С - не Паскаль.

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

Ниже - кусок кода для твоей программы, оформленный как отдельная программка для тестирования его работы.

#include <stdio.h>int _tmain(){char q; float fb; int b; char s[20];while(1){scanf("%s",s); if(s[0]>='+' && s[0]<='9')break; else printf("Error! Once more!\n");}sscanf(s,"%f%c",&fb,&q);b = fb;printf("%d   %c",b,q); getchar(); getchar();}

Вводится строка, затем проверяется, начинается ли она чем-то годящимся как начало числа, если да, то мы выходим на продолжение работы и там преобразуем ее в нужные нам число и символ, если нет, с возмущенными воплями возвращаемся обратно.

Serty

"А можно ту же самую программку, только на C#?"

Тут, к сожалению, не могу помочь, C# у меня не установлен, только Dev-C++ :(

  • Upvote 1
Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу



×
×
  • Создать...