Атака слонов Ганнибала в битве при Заме
Свои когорты (960 воинов) Сципион выстроил не в одну сплошную линию, а так, чтобы между подразделениями оставались широкие промежутки, по которым карфагенские слоны могли бы пройти, не расстраивая боевого порядка. Гая Лелия, своего легата (командующего легионом) он поместил с италийской конницей на левом фланге, а на правом карфагенянам противостояли Массинисса и его конница. В проходах между манипулами Сципион поставил легковооруженных копейщиков, приказав им при нападении слонов атаковать либо укрыться за выстроенными рядами солдат.
В это время Ганнибал, рассчитывая внушить римлянам страх, впереди поставил 80 слонов. Такого количества слонов он никогда не выводил в бой. За слонами он поставил вспомогательные отряды лигурийцев и галлов вместе с балеарцами и маврами; во втором ряду стояли карфагеняне, африканцы и легион македонян. Фланги он усилил конницей: справа – карфагенской, слева – остатками нумидийской.
Когда Ганнибал держал речь перед войсками, мотивируя воинов обещаниями повысить им жалование и напоминая про защиту родины, со стороны римлян раздались звуки труб и рогов. Поднялся такой крик, что слоны повернули на своих – на мавров и нумидийцев, стоявших на левом фланге. Наконец слонов удалось погнать на врага. Идя сквозь ряды копейщиков, израненные, они крушили все вокруг. Копейщики отошли к манипулам и дали дорогу слонам. Солдаты не переставая метали в слонов дротики, пока животных наконец не повернули назад, расстроив карфагенскую тяжелую кавалерию.
Затем сильная нумидийская конница Масиниссы обратила в бегство карфагенскую кавалерию, а вернувшись в бой, ударила в тыл карфагенской пехоты. Ганнибал проиграл сражение. На поле битвы при Заме полегло большинство карфагенских воинов. Те, которые бежали, были растоптаны неприятельской конницей или взяты в плен. По сообщению Тита Ливия, в этом бою погибло 11 слонов, 20 тысяч карфагенян и их союзников, около 10 тысяч попало в плен. Если судить по явно заниженным данным историка Полибия, то римляне потеряли чуть более полутора тысяч человек.
Вечером Ганнибал с несколькими всадниками ускакал в Гадрумет, преодолев 130 км одним разом. После неудачных попыток собрать остатки войска он поехал в Карфаген и сообщил, что битва при Заме проиграна. Проиграна была Вторая Пуническая война. В Карфагене даже после поражения никто не подвергал сомнению лидерство Ганнибала. Поэтому на него свалилась вся тяжесть ведения переговоров о мире. А римляне в лице прибывшего сената из 30 человек не знали жалости. По условиям мирного договора Карфаген сохранял свободу и свою территорию в Африке в тех пределах, какие существовали до войны. При этом он должен был выдать римлянам всех перебежчиков, беглых рабов и военнопленных, все боевые корабли и всех прирученных слонов. Карфаген был обязан вернуть Масиниссе его имущество и владения в тех пределах, которые он им укажет. Карфаген должен был содержать римские войска в Африке, выплатить огромную контрибуцию, полностью освободить Испанию и все острова между Италией и Африкой.